Образец NServiceBus FullDuplex, скомпилированный и отлаженный в среде .NET 4.0, вызывает исключение - PullRequest
2 голосов
/ 08 апреля 2010

Я только что установил VS2010 RC и запустил образец FullDuplex из NServiceBus 2.0.0.1145, и он работал нормально.Затем я изменил целевую инфраструктуру каждого проекта в решении на «.NET Framework 4», перекомпилировал и запустил в отладчике и получил следующее исключение:

System.InvalidOperationException не обработано. Сообщение = Конфигурация конечной точки не найдена вотсканированные сборки.Обычно это происходит, когда NServiceBus не может загрузить вашу сборку, содержащую IConfigureThisEndpoint.Попробуйте явно указать тип в NServiceBus.Host.exe.config, используя ключ настройки приложения: EndpointConfigurationTypeScanned path: C: \ Development \ Personal \ ThirdParty \ NServiceBus \ samples \ FullDuplex \ MyClient \ bin \ Debug \ Source = NServiceBus.Host StackTrace:в NServiceBus.Host.Program.ValidateEndpoints (IEnumerable`1 endpointConfigurationTypes) в d: \ BuildAgent-02 \ work \ 672d81652eaca4e1 \ src \ host \ NServiceBus.Host \ Program.cs: строка 189 в NServiceBus.GetEnd.Pointв d: \ BuildAgent-02 \ work \ 672d81652eaca4e1 \ src \ host \ NServiceBus.Host \ Program.cs: строка 171 в NServiceBus.Host.Program.Main (String [] args) в d: \ BuildAgent-02 \ work \672d81652eaca4e1 \ src \ host \ NServiceBus.Host \ Program.cs: строка 32 InnerException:

Ответы [ 4 ]

4 голосов
/ 19 мая 2010

Необходимо указать правильную поддерживаемую версию среды выполнения в NServiceBus.Host.exe.config

например:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="EndpointConfigurationTypeScanned" value="d:\w\ServiceBusTest\"/>
  </appSettings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
  </startup>
</configuration>
1 голос
/ 12 октября 2011

У меня возникла эта проблема, и я обнаружил, что мой путь к «Запуску внешней программы» для NServiceBus.Host.exe не был папкой с моими сборками, поэтому он не мог найти никаких конечных точек. В этом случае есть два варианта: указать NServiceBus.Host.exe в папке bin или использовать ответ menty и добавить EndpointConfigurationTypeScanned в конфигурацию.

1 голос
/ 08 апреля 2010

Ошибка на самом деле говорит все :)

Общий хост не может найти конфигурацию конечной точки, возможно, из-за того, что он не может динамически обнаруживать и загружать ваши сборки .NET 4.

Вам может понадобиться проверить исходный код NServiceBus и собрать его для .NET 4, чтобы он работал.

0 голосов
/ 15 апреля 2010

Мне так и не удалось полностью решить эту проблему. Сначала я должен был преобразовать все проекты NSB, чтобы установить целевую среду на 4.0. Затем я обновился до последней версии ilmerge и добавил необходимые аргументы для этого в скрипт сборки. Затем мне пришлось обновить файлы конфигурации NAnt и NUnit, чтобы они также работали с 4.0. Наконец-то я смог получить успешную сборку и ilmerge, но теперь у меня возникает ошибка, связанная с версией фреймворка TopShelf при выполнении обновленного образца FullDuplex с использованием вновь скомпилированных библиотек.

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

Андреас, есть ли планы обновить сам проект NSB до платформы 4.0 в ближайшем будущем?

...