LoadState(Strategy ,SettingsStorage )
При LoadState выдает Argument Null Exception для Security. Которое выбрасывается при ProcessNewOrders, которое в AttachOrder.
Делаю все по инструкциям.
Код
var orderDictionary = new Dictionary<Order, IEnumerable<MyTrade>>();
foreach (var order in Orders)
{
orderDictionary.Add(order, order.GetTrades());
}
if (storage.ContainsKey("Orders")) storage["Orders"] = orderDictionary;
else storage.Add("Orders", orderDictionary);
if (storage.ContainsKey("Positions")) storage["Positions"] = PositionManager.Positions;
else storage.Add("Positions", PositionManager.Positions);
var xmlSerializer = new XmlSerializer<SettingsStorage>();
xmlSerializer.Serialize(storage, Name + "_settings.xml");
base.Save(storage);
C XML все норм,записывается и считывается, кроме, как раз поля Security у ордеров.
Оно пишется не как объект,а просто Id инструмента, и при считывании потом превращается в null у ордера, что и вызывает исключение.
Подскажите, как победить?
P.S. Не связано ли это с тем, что у ордера у поля Security атрибут
Код
[RelationSingle(IdentityType = typeof(string))]