﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">.Do((e) =&gt; {})</title>
  <id>~/topic/1909/_do((e)--)/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-05-05T04:47:43Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1909" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/11598/</id>
    <title type="text">где ее искать, не подскажете? Так, это бага у нас. Будем заливать фикс на КодеПлекс.</title>
    <published>2011-09-27T08:56:54Z</published>
    <updated>2011-09-27T08:56:54Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11575/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;где ее искать, не подскажете?&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Так, это бага у нас. Будем заливать фикс на КодеПлекс.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11575/</id>
    <title type="text">по .ProcessDataError пришла ошибка (до установки версии S# 4.00 ее не было) System.NullReferenceExce...</title>
    <published>2011-09-27T07:15:45Z</published>
    <updated>2011-09-27T07:15:45Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">по .ProcessDataError пришла ошибка (до установки версии S# 4.00 ее не было)&lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.&lt;br /&gt;   в StockSharp.Smart.SmartTrader.#=q3tLr$QxrenSG5YjlASuEI3YJKIPBQt01k9cpFHgYyJQ=.#=q$5T2LCDBBwM47J333ZpQN36ivGAIvPSDWMTtg61c0To=(Security #=q9Td6zhg46FvqcJdw5D1efg==)&lt;br /&gt;   в StockSharp.Algo.BaseTrader.ProcessSecurityAction(String nativeSecurityId, Action`1 action, Boolean ignoreIfNotExist)&lt;br /&gt;   в StockSharp.Smart.SmartTrader.#=qSh1vnskI1TRN0VXH6_nhVXXVGijngdMW2AF_OFWjCXE=(String #=qyB8WsQekpkIh6dSNGced6A==, Trade #=qEBLG0UGbL90b4xwxzy0R6A==, Decimal #=q0E_NA6nZmhvkhKH9Ci8zww==, Decimal #=qrYwttbT28gJSOUZtT_4JZA==, Decimal #=qEfyBi1RA4cGneDuQdY1hwQ==, Decimal #=qZGMC$OXg6K$aauN5DNv2dA==, Int32 #=qT0uNmuX0Fqr6QaLol1s56w==, Quote #=qTapZLK3QErZ7k09eitKrgA==, Quote #=q2pQGnK9SatV4DyqfKpw1aA==, Decimal #=q$HfbK2GI21tagi2bu2fLwA==, Pair`2 #=qpLMOA6PGGidWhGuu6M6c2w==, Pair`2 #=qIGoV0D89lP0Mcox407wPfA==, Pair`2 #=q7DyFstvU7yzu9l4DEYRD9g==, Int32 #=qj7GnYHiH938qOmf2rsb_$w==)&lt;br /&gt;   в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14](Action`14 handler, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14)&lt;br /&gt;   в StockSharp.Smart.SmartComWrapper.#=q25OG9KgOP3T$2fbADDueKDH$kJg0yiuVvMXisxs4WHg=.#=qssQr6uP7yJ480vRmReP11dv9g6dlSBmwuTLvi5k1_5I=()&lt;br /&gt;   в StockSharp.Algo.BaseTrader.ProcessEvents(Action handler)&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;где ее искать, не подскажете?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11256/</id>
    <title type="text">Мне кажется обработку ошибок обращения к данным надо отдать в руки разработчика. Оборачивайте код в ...</title>
    <published>2011-09-20T09:42:48Z</published>
    <updated>2011-09-20T09:42:48Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11253/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Мне кажется обработку ошибок обращения к данным надо отдать в руки разработчика.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Оборачивайте код в try catch. Или еще как-то. S# тут при чем?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11253/</id>
    <title type="text">Дело не в том. Я просто не очень согласен с концепцией перехвата для дальнейшей пользовательской обр...</title>
    <published>2011-09-20T08:20:31Z</published>
    <updated>2011-09-20T08:20:31Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/11229/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11215/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Дело не в том. Я просто не очень согласен с концепцией перехвата для дальнейшей пользовательской обработки абсолютно всех ошибок.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Распишите по подробнее вашу концепцию.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Мне кажется обработку ошибок обращения к данным надо отдать в руки разработчика. Тем более обрабатывать такие смешные явные ошибки как int i = &amp;quot;строка&amp;quot; (как в данном случае) вообще нет смысла. их надо ловить на этапе выявления и однозначно останавливать ход выполнения программы.&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11229/</id>
    <title type="text">Дело не в том. Я просто не очень согласен с концепцией перехвата для дальнейшей пользовательской обр...</title>
    <published>2011-09-19T15:20:30Z</published>
    <updated>2011-09-19T15:20:30Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11215/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Дело не в том. Я просто не очень согласен с концепцией перехвата для дальнейшей пользовательской обработки абсолютно всех ошибок.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Распишите по подробнее вашу концепцию.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11215/</id>
    <title type="text"> Вы не поняли. Исключение генерируется и оно перехватывается OnError и ProcessDataError. Обрабатывай...</title>
    <published>2011-09-19T12:12:07Z</published>
    <updated>2011-09-19T12:12:07Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Alexander &lt;a href="https://stocksharp.ru/posts/m/11201/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;Вы не поняли.&lt;br /&gt;Исключение генерируется и оно перехватывается OnError и ProcessDataError. Обрабатывайте его там дальше как вам угодно. Хотите - делайте throw, хотите - перезагружайте стратегии. Всё зависит от вас.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Дело не в том. Я просто не очень согласен с концепцией перехвата для дальнейшей пользовательской обработки абсолютно всех ошибок. Ну да бог с ним)&lt;br /&gt;Возможно в этом есть свои плюсы.&lt;br /&gt;&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11201/</id>
    <title type="text">Strategy.OnError + ITrader.ProcessDataError? ИМХО удобней использовать throw Так вы саме обрабатывае...</title>
    <published>2011-09-19T10:17:46Z</published>
    <updated>2011-09-19T10:17:46Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11197/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Alexander &lt;a href="https://stocksharp.ru/posts/m/11194/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11190/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/11163/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Strategy.OnError + ITrader.ProcessDataError?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;ИМХО удобней использовать throw&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Так вы саме обрабатываете событие OnError и ProcessDataError и реагируете как хотите.&lt;br /&gt;Останавливать работу приложения из-за ошибки внутри стратегии - не лучшая затея. Даже без имхо :)&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Если в стратегии возникают несовпадения типов, то это стратегия написана с критической ошибкой и программа не должна исполняться дальше. Несовпадение типов в C# в случае, когда нет возможности оповестить об этом на этапе компиляцмм, всегда вызывает исключение на этапе исполнения. Это не логическая ошибка, чтобы ее ловить Strategy.OnError + ITrader.ProcessDataError. И я слабо представляю себе ситуации, когда несовпадение типов заложено в логику исполнения программы намеренно... - если уж это делается намеренно, то и не забывается про try{} catch(). &lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Вы не поняли.&lt;br /&gt;Исключение генерируется и оно перехватывается OnError и ProcessDataError. Обрабатывайте его там дальше как вам угодно. Хотите - делайте throw, хотите - перезагружайте стратегии. Всё зависит от вас.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11197/</id>
    <title type="text">Strategy.OnError + ITrader.ProcessDataError? ИМХО удобней использовать throw Так вы саме обрабатывае...</title>
    <published>2011-09-19T10:11:01Z</published>
    <updated>2011-09-19T10:11:01Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Alexander &lt;a href="https://stocksharp.ru/posts/m/11194/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11190/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/11163/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Strategy.OnError + ITrader.ProcessDataError?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;ИМХО удобней использовать throw&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Так вы саме обрабатываете событие OnError и ProcessDataError и реагируете как хотите.&lt;br /&gt;Останавливать работу приложения из-за ошибки внутри стратегии - не лучшая затея. Даже без имхо :)&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Если в стратегии возникают несовпадения типов, то это стратегия написана с критической ошибкой и программа не должна исполняться дальше. Несовпадение типов в C# в случае, когда нет возможности оповестить об этом на этапе компиляцмм, всегда вызывает исключение на этапе исполнения. Это не логическая ошибка, чтобы ее ловить Strategy.OnError + ITrader.ProcessDataError. И я слабо представляю себе ситуации, когда несовпадение типов заложено в логику исполнения программы намеренно... - если уж это делается намеренно, то и не забывается про try{} catch(). &lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11194/</id>
    <title type="text">Strategy.OnError + ITrader.ProcessDataError? ИМХО удобней использовать throw Так вы саме обрабатывае...</title>
    <published>2011-09-19T09:00:37Z</published>
    <updated>2011-09-19T09:00:37Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;raf &lt;a href="https://stocksharp.ru/posts/m/11190/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/11163/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Strategy.OnError + ITrader.ProcessDataError?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;ИМХО удобней использовать throw&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Так вы саме обрабатываете событие OnError и ProcessDataError и реагируете как хотите.&lt;br /&gt;Останавливать работу приложения из-за ошибки внутри стратегии - не лучшая затея. Даже без имхо :)</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11190/</id>
    <title type="text">Strategy.OnError + ITrader.ProcessDataError? ИМХО удобней использовать throw</title>
    <published>2011-09-19T08:32:20Z</published>
    <updated>2011-09-19T08:32:20Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Mikhail Sukhov &lt;a href="https://stocksharp.ru/posts/m/11163/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Strategy.OnError + ITrader.ProcessDataError?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;ИМХО удобней использовать throw</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11163/</id>
    <title type="text">Strategy.OnError + ITrader.ProcessDataError? </title>
    <published>2011-09-16T21:35:19Z</published>
    <updated>2011-09-16T21:35:19Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Strategy.OnError + ITrader.ProcessDataError?&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/11161/</id>
    <title type="text">Имеется следующая проблема Допустим имеется класс-правило MyStrategyRuleClass унаследованное от Stra...</title>
    <published>2011-09-16T16:31:41Z</published>
    <updated>2011-09-16T17:12:15Z</updated>
    <author>
      <name>raf</name>
      <uri>https://stocksharp.ru/users/28475/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Имеется следующая проблема&lt;br /&gt;&lt;br /&gt;Допустим имеется класс-правило MyStrategyRuleClass унаследованное от StrategyRule&lt;br /&gt;если использовать this.When(this.MayStrategyRule).Do&amp;lt;&lt;b&gt;AnyType&lt;/b&gt;&amp;gt;((e) =&amp;gt; {})&lt;br /&gt;и в классе MyStrategyRuleClass при вызове base.Activate(&lt;b&gt;NOTAnyType&lt;/b&gt;) передать по ошибке другой тип,&lt;br /&gt;то никаких ошибок не последут,&lt;br /&gt;выполнится override метод MyStrategyRuleClass.DisposeManaged() и правило перестанет работать&lt;br /&gt;&lt;br /&gt;Думаю стоит должным образом обрабатывать подобную ошибку в реализации base.Activate() и Do(), чтобы генерировалось исключение</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>