После обновления 4.0.6 не работают правила

После обновления 4.0.6 не работают правила
Atom
11/28/2011
pehas


Доброго времени суток

После обновления на версию 4.0.6, перестал работать вот такой код


this
   .When(CandleToken.CandlesStarted())
   .Do<IEnumerable<Candle>>(candles =>
   {
     var candle = candles.ElementAt(0);
   };


Ошибка	1	Делегат "System.Func<StockSharp.Algo.Strategies.StrategyRule<System.Collections.Generic.IEnumerable<StockSharp.Algo.Candles.Candle>>,System.Collections.Generic.IEnumerable<StockSharp.Algo.Candles.Candle>,System.Collections.Generic.IEnumerable<StockSharp.Algo.Candles.Candle>>" не принимает "1" аргументов	C:\VS2010\AmBot\Strategy.cs	53	42	AmBot


Tags:


Thanks:


< 1 2 
Mikhail Sukhov

Avatar
Date: 11/30/2011
Reply


Mikhail Sukhov: У меня и вот такой работает:

this .When(order.NewTrades()) .Do(trades => { trades.ElementAt(0); });


И вот такое:

```csharp
this
  .When(new CandleToken<TimeFrameCandle, TimeSpan>(null, TimeSpan.MinValue).CandlesStarted())
  .Do(candles =>
  {
    var candle = candles.ElementAt(0);
  });

Что-то видимо не до конца указываете. Можете прислать проектный файл целиком с минимальным не компилирующимся кодом.

Thanks:

pehas

Avatar
Date: 11/30/2011
Reply


Alexander Mukhanchikov: Убедили :)

Вот так работает:

			this
				.When(order.NewTrades())
				.Do((t, trades) =>
				    	{
							var trade = trades.ElementAt(0);
				    	});

О, другое дело!) Так работает. Ато я уже думал, у меня крыша начинает ехать [cursing] 
Thanks:

pehas

Avatar
Date: 11/30/2011
Reply


Mikhail Sukhov: Что-то видимо не до конца указываете. Можете прислать проектный файл целиком с минимальным не компилирующимся кодом.

Работать то у меня работают и те примеры, что вы указали. Но это если их просто скопировать и вставить. А когда начинаешь там что-то менять - добавлять, студия сходит с ума.

Но если определение Do делать, как указал Александр, то все в порядке

Thanks:

Mikhail Sukhov

Avatar
Date: 11/30/2011
Reply


pehas: Работать то у меня работают и те примеры, что вы указали. Но это если их просто скопировать и вставить. А когда начинаешь там что-то менять - добавлять, студия сходит с ума.

У меня то не сходит.

Thanks:

Alexander

Avatar
Date: 11/30/2011
Reply


pehas:

Mikhail Sukhov: Что-то видимо не до конца указываете. Можете прислать проектный файл целиком с минимальным не компилирующимся кодом.

Работать то у меня работают и те примеры, что вы указали. Но это если их просто скопировать и вставить. А когда начинаешь там что-то менять - добавлять, студия сходит с ума.

Но если определение Do делать, как указал Александр, то все в порядке

приложите проект. может дело в юзингах \ референсах. дайте посмотреть, лучше сейчас разобраться чем откладывать.

Thanks:

pehas

Avatar
Date: 11/30/2011
Reply


Александр, Михаил

Отправил вам проект в личку. Файл TurtleStrategy.cs

Пробую на двух машинах - домашней и рабочей. Результат одинаковый Референсес все качал из 4.0.6 - Sources c SourceForge Проект перестраивал, юсинги все неиспользуемые удалял. Сыылки тоже все по одной передобавил только те, что были нужны.

Так же пробовал создать чистый проект и вставил туда только те либы, которые нужны были для запуска примера. Результат тот же..

Действительно студия себя ведет неадекватно..

Thanks:

Alexander

Avatar
Date: 11/30/2011
Reply


К сообщению прикрепляю файл - всё ок. Ничего не менял в проектах, просто вписал это правило вместо того что там было.

Узнал что это нормально когда студия по нажатию . (интелли сенс) думает что candles - StrategyRule. Тип-то не знает. А он действительно может быть StrategyRule. Допишите руками ElementAt(0) и всё нормально.

в общем - удалите старые файлы, перекомпилируйте - и в бой :)

321.png 14 KB (267)
Thanks: pehas

pehas

Avatar
Date: 12/1/2011
Reply


Значит не глюк.. Видимо просто добавили перегрузку и теперь оно может быть и StrategyRule тоже. Раньше видимо не могло в предыдущих версиях. Ладно, тогда мылю лыжи и в перед к новым подвигам. Хорошо что разобрались [cool]

Thanks:
< 1 2 

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy