2014-11-28 3 views
1

У нас есть лазурное обслуживание. Решение для него включает несколько проектов. Некоторые проекты ссылаются на azure.storage ver. 4.2.1. На основе nugget.org зависимости для azure.storage - odata, edm etc> = 5.6.0. Мы хотим использовать последнюю версию 5.6.3. Поэтому мы добавили ссылки на проекты со ссылками на все зависимые сборки из версии 5.6.3 (несмотря на то, что ILSPY показывает, что зависимости для версии 5.6.0). Но, к сожалению, загруженные dll - от gac с версией 5.6.0. (А не от пути, который мы ссылочный с последней версией) Как DLLs загружаются:Где загружаются сборки?

  1. на основе Force load an assembly from the /bin and not the GAC? и http://msdn.microsoft.com/en-us/library/yx7xezcf.aspx - он загружает сборку из GAC firstable
  2. Основываясь на http://blogs.msdn.com/b/manishagarwal/archive/2005/09/28/474769.aspx и Microsoft.Common.CurrentVersion? .targets он должен выглядеть первым в каталоге bin - not gac.

Что такое? И как (вообще) я могу достичь того, что я пытаюсь сделать?

ответ

2

Вы сравниваете разрешающие из сборки для компиляции к решению собраний на исполнении.

Оба ваших пункта и их ссылки верны, но только для их конкретной ситуации. Ваши ссылки # 2 объясняют решение сборки процесса компиляции, ваши ссылки №1 говорят о процессе выполнения.

+0

Спасибо. У меня все еще есть вопрос - могу ли я заставить во время исполнения версию быть такой, какой я хочу, а не тот, который был найден в GAC? – Yakov

+0

Вы можете обработать событие ['AssemblyResolve'] (http://msdn.microsoft.com/en-us/library/system.appdomain.assemblyresolve%28v=vs.110%29.aspx). –

+0

Спасибо. Если я не использую сборщик, но доверяю GAC - должен ли я добавить в csproj все зависимости azure.storage 4.1.2? как насчет nugets (packages.config)? – Yakov

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