0

Я использую NServiceBus в сложном решении (более 150 проектов, многие из которых используют NSB). До прошлой ночи, когда я больше не мог этого выносить, у каждого проекта были свои целевые каталоги (./bin/debug и ./bin/release). Из-за зависимостей между моими проектами я много раз строил и перестраивал одни и те же двоичные файлы, поэтому мы решили перейти на общий выходной каталог для всего, что значительно улучшает время сборки решения. До сих пор так хорошо ...NServiceBus, похоже, относится к версии 2.0.0.0 с помощью Ionic.Zip.dll

Однако, когда я попытался запустить свой проект, он не начнет давать мне ошибку:

Warning 1 : Found conflicts between different versions of the same dependent assembly that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed. C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets 1697 5 My.Assembly.Goes.Here 

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

30>------ Build started: Project: My.Assembly.Goes.Here, Configuration: Debug Any CPU ------ 
28>Building with tools version "12.0". 

<Lots of stuff omitted...> 

28> There was a conflict between "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" and "mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes". 
28>  "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" was chosen because it was primary and "mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" was not. 
28>  References which depend on "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" [C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.1\mscorlib.dll]. 

<etcetera...> 

Out приходит Dependency Walker (отличный инструмент, кстати). ОК, так что в зависимости от старой версии 2.0? Посмотрите на все ссылки на mscorlib и ... Одна из этих вещей не походит на другие ...

enter image description here

NServiceBus.Hosting.Azure принимает зависимость от Ionic.Zip.dll, который, в свою очередь, принимает зависимость от версии mscorlib.dll 2.0.0.0. Уч. FWIW, версия NServiceBus.Hosting.Azure, которая делает это 5.3.2.0.

Это выглядит для меня быть похожим на вопрос здесь: https://github.com/Particular/NServiceBus/issues/664

Могу ли я обойти это с Ассамблеи Binding Перенаправление? Есть ли какой-то способ для меня, чтобы NSB сообщил Ionic.Zip.dll, что версия mscorlib.dll 4.0.0.0 в порядке, спасибо вам большое?

Или это ошибка NSB?

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

+0

Мы открыли [вопрос здесь] (https: // GitHub .com/Особый/NServiceBus.Host.AzureCloudService/issues/38) –

+0

Спасибо Шон. Любые обновления по времени для патча оцениваются. Мы находимся в блоке здесь - исследуем другие пути (возможно, придется обновлять NSB до V5, но это тяжелый подъем в этот момент для нас). –

ответ

2

Привязка перенаправления на mscorlib должны работать по-моему, или вы могли бы попробовать связывание переориентировать на более новую версию dotnetziplib (Ionic), который нацелен на 4,0

+0

Я играл со связыванием переадресаций и не могу запустить его. Я дам вам знать, буду ли я работать. –

+0

Никогда не удалось заставить переадресацию привязки работать. Будет ли исследование новой версии dotnetziplib - возможно, это поможет ... –

 Смежные вопросы

  • Нет связанных вопросов^_^