NHibernate UnableToLoadProxyFactoryFactoryException - PullRequest
0 голосов
/ 04 октября 2011

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

Вот мой код (c #):

var nHConfig = new Configuration().Configure();
var sessionFactory = nHConfig.BuildSessionFactory();

ФактическийКонфигурация подробно описана в файле App.config:

<session-factory>
  ...
  <property name="proxyfactory.factory_class">
    NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
  </property>
  ...
</session-factory>

Я ссылаюсь на NHibernate.dll и NHibernate.ByteCode.Castle.dll.

Вот ошибка, которую я получаю:

ошибка: NHibernate.Bytecode.UnableToLoadProxyFactoryFactoryException: невозможно загрузить тип 'NNHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle' во время настройки класса фабрики прокси.

10*
Вот решение, принятое в вышеупомянутом посте (ответ дан Кевин Кроуэлл ):

Эта проблемапроисходит, когда NHibernate.ByteCode.Castle.dll был собран с другой целевой платформой в качестве вашего проекта.Чтобы проверить это, измените целевую платформу своей программы с одного или нескольких из следующих:

  • x64 на x86
  • x86 на x64
  • «Любой ЦП» до x86
  • «Любой ЦП» до x64

Если кто-то из них решит вашу проблему, то вы знаете, что вам просто нужно синхронизировать DLL и вашу целевую платформу.

Моя проблема заключается в следующем -

Когда я пытаюсь запустить приложение после смены целевой платформы, Visual Studio выдает следующую ошибку:

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

Есть идеи, что я могу делать неправильно, и что я могу сделать, чтобы исправить или обойти проблему?

Большое спасибо!

1 Ответ

0 голосов
/ 05 октября 2011

Ссылка NHibernate.ByteCode.Castle.dll на ваш проект не обязательна, так как это среда выполнения с разрешением зависимостей. Вы должны убедиться, что сборка присутствует в пути к приватной корзине вашего приложения (рядом с исполняемым файлом для настольного приложения, в пути / bin для веб-приложения) и что присутствуют и другие зависимости этой сборки. В качестве дополнительной ссылки, с версии 3.2.0 GA существует фабрика прокси по умолчанию, указывающая на внутренний прокси LinFu, см. Этот JIRA: https://nhibernate.jira.com/browse/NH-2586 так что если у вас есть особые потребности в использовании прокси-серверов замка, вы можете полностью избежать настройки фабрики прокси.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...