«Вы должны добавить ссылку на Microsoft.Practices.EnterpriseLibrary.Common», даже если сборка в GAC - PullRequest
5 голосов
/ 14 ноября 2011

Я пытаюсь скомпилировать приложение, для которого у меня есть решение, и я не могу пройти мимо:

'Microsoft.Practices.EnterpriseLibrary.Common.Configuration.IConfigurationSource' определяется в сборке, на которую нет ссылок. Вы должны добавить ссылка на сборку 'Microsoft.Practices.EnterpriseLibrary.Common, Версия = 3.1.0.0, Культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a '

Итак, я добавил сборку в GAC:

enter image description here

После некоторых исследований я открыл Visual Studio с запущенным Fusion Assembly Binding Viewer , который, казалось, создавал много журналов, но ни одного из них, связанных с этой точной версией сборки (однако 4.1.0.0 там ).

Я не могу просто добавить -> ссылку, поскольку VS говорит мне, что ссылка с таким именем уже существует.

Какие еще пути я должен исследовать?

1 Ответ

1 голос
/ 15 ноября 2011

Пробовали ли вы использовать псевдоним сборки, если вы используете .net 4.0, вам нужно иметь запись в файле .config, например, которая показывает старое имя сборки, ссылающееся на новое имя сборки.Несколько других вещей, которые нужно иметь в виду ... если .DLL находится в GAC, и у вас нет копии этой сборки в папке bin, это может вызвать проблему.

Это локальная ссылкаили это код на удаленной машине ..?если это удаленный компьютер ... почему бы не добавить эту конкретную сборку в GAC ... заметить разницу версий двух сборок в вашем снимке экрана ...

...