Ошибка при запуску SampleHistoryTesting
Atom Ответить
29.05.2011


Добрый день!

Пытаюсь разобраться в Вашем примере SampleHistoryTesting. Написал приложение на WindowsForm. Практически весь код взял из примера. Программа запускается, но когда нажимаю на кнопку "Старт", вылетает ошибка:
"Инициализатор типа "Ecng.Trading.BusinessEntities.Exchange" выдал исключение."

на объявлении переменно security
// создаем тестовый инструмент, на котором будет производится тестирование
var security = new Security
{
Id = "RIU9@RTS", // по идентификатору инструмента будет искаться папка с историческими маркет данными
Code = "RIU9",
Name = "RTS-9.09",
MinStepSize = 5,
MinStepPrice = 2,
Decimals = 0,
Exchange = Exchange.Test
};



Ваш пример запускается успешно. Подскажите в чем проблема?



Спасибо:




5 Ответов
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 29.05.2011
Ответить


neighbour Перейти
Ваш пример запускается успешно. Подскажите в чем проблема?


Сложно ответить, вы же текст самого исключения не привели.
Спасибо: neighbour

neighbour

Фотография
Дата: 29.05.2011
Ответить


Верхняя ошибка именно такая. Когда нажимаешь View Detail: нашел такую ошибку

InnerException
{"Инициализатор типа \"Ecng.Common.Converter\" выдал исключение."}

System.IO.FileNotFound
{"Невозможно загрузить файл или сборку \"PowerCollections, Version=1.0.2224.30206, Culture=neutral, PublicKeyToken=8d05ee679e87a45f\" или один из зависимых от них компонентов. Не удается найти указанный файл.":"PowerCollections, Version=1.0.2224.30206, Culture=neutral, PublicKeyToken=8d05ee679e87a45f"}

Я не профи в C# поэтому подскажите где и что посмотреть если я не то нашел.

Заранее спасибо!!!
Автор топика
Спасибо:

Alexander

Фотография
Дата: 29.05.2011
Ответить


neighbour Перейти
Верхняя ошибка именно такая. Когда нажимаешь View Detail: нашел такую ошибку

InnerException
{"Инициализатор типа \"Ecng.Common.Converter\" выдал исключение."}

System.IO.FileNotFound
{"Невозможно загрузить файл или сборку \"PowerCollections, Version=1.0.2224.30206, Culture=neutral, PublicKeyToken=8d05ee679e87a45f\" или один из зависимых от них компонентов. Не удается найти указанный файл.":"PowerCollections, Version=1.0.2224.30206, Culture=neutral, PublicKeyToken=8d05ee679e87a45f"}

Я не профи в C# поэтому подскажите где и что посмотреть если я не то нашел.

Заранее спасибо!!!


System.IO.FileNotFound
{"Невозможно загрузить файл или сборку \"PowerCollections


добавьте PowerCollections в References проекта
Спасибо: neighbour

neighbour

Фотография
Дата: 30.05.2011
Ответить


Господа, а вот еще вопрос. У вас используются методы this.GuiAsync. Как я понимаю это реализация многопоточности. Как это метод перенести на WindowsForm? Использовать делегаты?

Как пример можно рассматривать события обработки ITrader.Connected из примера SampleDdeCustomTable
this.Trader.Connected += () => this.GuiAsync(() =>
{
this.ShowCandles.IsEnabled = true;
this.ExportDde.IsEnabled = true;

_isConnected = true;
this.ConnectBtn.Content = "Отключиться";
});



Правильно ли я понимаю, что Trader запускается как новый поток где-то внутри сборки Ecng?
Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 30.05.2011
Ответить


neighbour Перейти
Господа, а вот еще вопрос. У вас используются методы this.GuiAsync. Как я понимаю это реализация многопоточности. Как это метод перенести на WindowsForm? Использовать делегаты?

Как пример можно рассматривать события обработки ITrader.Connected из примера SampleDdeCustomTable
this.Trader.Connected += () => this.GuiAsync(() =>
{
this.ShowCandles.IsEnabled = true;
this.ExportDde.IsEnabled = true;

_isConnected = true;
this.ConnectBtn.Content = "Отключиться";
});



Правильно ли я понимаю, что Trader запускается как новый поток где-то внутри сборки Ecng?


На WinForms можно сделать примерно так, вспомогательный класс:
Код

public static class GuiHelper
{
public static void GuiAsync(this Control control, Action action)
{
if (control.InvokeRequired)
{
control.BeginInvoke(action);
}
else
{
action();
}
}
}

вызов:
Код
this.GuiAsync(() => Text = "проверка");
Спасибо: neighbour


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy