← Zurück

Не работает ExtensionInfo

Уважаемые разработчики!

Пытаюсь переехать с S# 4.1.1 на 4.1.7 (codeplex trunk)

Летят эксепшены "The given key was not present in the dictionary"

Код банальный, при переезде никак не менялся:

var columns = this.Trader.SecuritiesTable.Columns;
columns.Add(DdeSecurityColumns.Yield);

var ecolumns = this.Trader.EquityPortfoliosTable.Columns;
ecolumns.Add(DdeEquityPortfolioColumns.BlockedCurrency);

При данных обращениях к этим данным получаю исключения:


sec.ExtensionInfo[DdeSecurityColumns.Yield]
portfolio.ExtensionInfo[DdeEquityPortfolioColumns.BlockedCurrency]

Стек-трейсов нет, т.к. это обращение непосредственно в сам словарь...

Посмотрел содержимое словаря для sec- в нем нет ключа Yield.

Аналогично для portfolio c BlockedCurrency.

Есть ли какие-либо новые ограничения по использованию дополнительных полей в таблицах?

War dieses Thema hilfreich?

Thema teilen

Kommentare (6)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

esper
esper

Пример SampleDdeExtendedInfo так же не работает?

Den
Den Autor

esper: Пример SampleDdeExtendedInfo так же не работает?

Я помучал свое приложение. У securityне появляются в ExtendedInfo поля DdeSecurityColumns.CloseYield, DdeSecurityColumns.LegalClosePrice, DdeSecurityColumns.Yield У портфеля по деривативам DdeDerivativePortfolioColumns.PositionsPrice, DdeDerivativePortfolioColumns.MarketCommission

Там есть какие-то проверки и ограничения?

esper
esper

Den: Я помучал свое приложение. У securityне появляются в ExtendedInfo поля DdeSecurityColumns.CloseYield, DdeSecurityColumns.LegalClosePrice, DdeSecurityColumns.Yield У портфеля по деривативам DdeDerivativePortfolioColumns.PositionsPrice, DdeDerivativePortfolioColumns.MarketCommission

Там есть какие-то проверки и ограничения?

Попробуйте последнюю версию с кодеплекса, там есть фикс.

Den
Den Autor

esper: Попробуйте последнюю версию с кодеплекса, там есть фикс.

да, svn up помог. Спасибо!

esper
esper

Попробуйте последнюю версию с кодеплекса.

Axell
Axell

Появилась аналогичная проблема при переходе с S# 4.1.9 на 4.1.15 Код:

trader.EquityPortfoliosTable.Columns.Add(DdeEquityPortfolioColumns.RemainCurrency);
trader.EquityPortfoliosTable.Columns.Add(DdeEquityPortfolioColumns.AvailableBuyNonMarginCurrency);

при обращении:

portfolio.ExtensionInfo[DdeEquityPortfolioColumns.RemainCurrency]
portfolio.ExtensionInfo[DdeEquityPortfolioColumns.AvailableBuyNonMarginCurrency]

получаем "The given key was not present in the dictionary"

При откате на 4.1.9 всё работает