← 戻る

Как теперь сохранять стаканы?

Добрый день! Пытаюсь сохранять стаканы как описано в документации и как работало в старых версиях, кратко так:

var depths = new List<MarketDepth>(); depths.add(Mdepth.Clone()); var DepthStorage = storage1.GetMarketDepthStorage(cursec); DethStorage.Save(depths);

Получаю эксепшн: Не удалось привести тип объекта "StockSharp.BusinessEntities.MarketDepth" к типу "StockSharp.Messages.QuoteChangeMessage". Как можно привести одно к другому?

このトピックは参考になりましたか?

トピックを共有

コメント (6)

ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください

esper
esper

Какая версия? Как создается storage1?

Garry
Garry 著者

Версия последняя 4.2.25 var storage1 = new StorageRegistry(); ((LocalMarketDataDrive)storage1.DefaultDrive).Path = "path";

esper
esper

Не воспроизводится. Полный стектрейс какой?

Garry
Garry 著者

{System.InvalidCastException: Не удалось привести тип объекта "StockSharp.BusinessEntities.MarketDepth" к типу "StockSharp.Messages.QuoteChangeMessage". в System.Linq.Enumerable.<CastIterator>d__b11.MoveNext() в System.Linq.Lookup2.Create[TSource](IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer) в System.Linq.GroupedEnumerable3.GetEnumerator() в #=qF0wJAt8A0U0VZNOg6esDW43L_m3cEtaqP6O$2bmYf6lsbTMqFO1DV_RWXAW2P3xr.Save(IEnumerable1 #=qy$b3GDqr9pASWh6DBqwo2Q==) в #=qF0wJAt8A0U0VZNOg6esDW43L_m3cEtaqP6O$2bmYf6lsbTMqFO1DV_RWXAW2P3xr.#=qbkfHha9zpmAl9wIoJYyNC0z$BHlYpLmsVmlhvua97pOyWD1DifUFKGjIhfz5ta8bZLb3CWz6Fmin3qgz4JffkQ==(IEnumerable #=q$TY8t$FSCaMvnbAOWPzRAw==) в WindowsFormsApplication2.Form1.stakan_vivod(Object sender, ElapsedEventArgs e) в c:\Projects\SkyDaPlaza\WindowsFormsApplication2\Form1.cs:строка 863}

Mikhail Sukhov
Mikhail Sukhov

Garry: IMarketDataStorage DepthStorage = storage1.GetMarketDepthStorage(cursec); DethStorage.Save(depths);

сделайте так.

Garry
Garry
Garry 著者

Спасибо огромное!