Не удалось загрузить файл или сборку 'Castle.DynamicProxy2, версия = 2.1.0.0, культура = нейтральная, PublicKeyToken = 407dd0808d44fbdc' - PullRequest
0 голосов
/ 21 октября 2010

Я использую Microsoft Visual Studio 2010. Я начинаю работать с FluentNHibernate 1.1.После выполнения configuration.BuildSessionFactory () у меня есть исключение.

Message "Could not load file or assembly 'Castle.DynamicProxy2, Version=2.1.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc' or one of its dependencies.

Castle.DynamicProxy2 присутствует в ссылках на проект, версия вернаТакже эта сборка присутствует в пути сборки.Я не могу решить эту проблему ...

ps Я пытаюсь получить последнюю версию FluentNHibernate, собрать и запустить со сборкой в ​​моем проекте.У меня такая же ошибка.

Ответы [ 2 ]

0 голосов
/ 22 октября 2010

Вы говорите, что ссылка на Castle.DynamicProxy2 существует в вашем проекте и является правильной версией.Вы проверили его путь к файлу, правильно ли он указан?

Существует небольшая проблема с MSVS, связанная с ссылочными путями.Как только вы ссылаетесь на сборку, и ваш проект компилируется, копия этой сборки создается в вашем выходном каталоге.Часто его путь ссылки автоматически изменяется, чтобы указывать на этот выходной каталог.Затем, если вы выполните очистку или что-то еще, ваш файл больше не будет там, где его ожидают, и выдает такого рода сообщение об ошибке.

Чтобы решить эту проблему, необходимо удалить ссылку на проблемную сборку и добавитьэто опять же как ссылка на ваш проект.

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

0 голосов
/ 22 октября 2010

Это может быть потому, что вы нацелены на фреймворк 4.0, а сборка Castle скомпилирована для 2.0.

Вы можете попытаться добавить это в свой app.config в элементе <configuration />, чтобы разрешить смешанную версию во время выполнения:

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
...