0

ConcurrentDictionary を作成しましたが、その要素を更新する方法がわかりません。

        public class ModelClient : ICloneable
        {
            public Session session;
            public List<string> keys = new List<string>();
            public List<ModelOrder> orders = new List<ModelOrder>();

            public ModelClient(SessionID sessionID)
            {
                session = Session.LookupSession(sessionID);
            }

            public object Clone() { return this.MemberwiseClone(); }
        }

      public class ModelOrder : ICloneable
        {
            private string Symbol;
            private int Amount;
            private double Price;

            public ModelOrder(string Symbol, int Amount, double Price)
            {
                this.Symbol = Symbol;
                this.Amount = Amount;
                this.Price = Price;
            }

            public object Clone() { return this.MemberwiseClone(); }
        }

public ConcurrentDictionary<SessionID, ModelClient> ModelClients = new ConcurrentDictionary<SessionID, ModelClient>();

ここで (注文に新しい要素を追加して) 更新する必要があります。TryUpdate を使用する必要があるようですが、非常に面倒で読みにくいようです。

誰か良い方法を教えてください。

   public bool AddModelClientOrder(SessionID sessionID, string orderMessage)
    {
        string[] part = orderMessage.Split(' ');

        //HOW DO I BEST DO THIS?
        ModelClients[sessionID].orders.Add(new ModelOrder(part[0], int.Parse(part[1]), double.Parse(part[2])));
    }
4

0 に答える 0