Nhibernate и Windows Azure - PullRequest
       0

Nhibernate и Windows Azure

0 голосов
/ 15 мая 2011

Я создаю приложение REST WCF поверх Windows Azure. В localhost я могу подключиться и использовать SQL Azure с NHibernate, но всякий раз, когда я пытаюсь переместить приложение в Windows Azure, оно не может загрузить необходимые библиотеки DLL для нормальной работы NHibernate.

Я видел форумы, на которых говорится, что эта проблема может возникнуть, если библиотеки NHibernate были скомпилированы с целью x86, и поскольку Windows Azure работает на x64, я попытался изменить цель моей сборки на x64 (хотя я работаю Windows 7 x86).

Проблема, которую он отображает,

Сервер обнаружил ошибку обработка запроса. Исключение сообщение «Невозможно загрузить тип «NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle 'во время Конфигурация прокси фабричного класса. Возможные причины: - Сборка провайдера NHibernate.Bytecode не был развернут. - Используется typeName инициализировать свойство proxyfactory.factory_class раздела сессия-фабрика не хорошо сформирован. Решение: подтвердите, что Ваша папка развертывания содержит один из следующие сборки: NHibernate.ByteCode.LinFu.dll NHibernate.ByteCode.Castle.dll. Увидеть логи сервера для более подробной информации.

Кто-нибудь видел эту ошибку раньше? Как мне это решить?

Ответы [ 3 ]

0 голосов
/ 16 мая 2011

Поскольку это та же проблема, что и NHibernate не может загрузить Proxy Factory , то:

  • проверьте, что один из NHibernate.ByteCode.LinFu.dll или NHibernate.ByteCode.Castle.dll ссылается на ваш проект
  • , убедитесь, что "Копия локальная" имеет значение true на этой dll
0 голосов
/ 25 мая 2011

Что ж, оказалось, что это не имеет ничего общего с Azure, который работает довольно легко.

Чтобы это сработало, мне пришлось взломать процесс msbuild, который был достаточно «умен», чтобы не использовать Castle dll. Как уже говорилось, это не должно быть постоянным исправлением, потому что вам нужно будет изменить конфигурацию msbuild, чтобы она включала необходимые библиотеки DLL. Я просто пока не знаю, как это сделать, возможно, гении в StackOverflow могут помочь нам.

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

http://weblogs.asp.net/srkirkland/archive/2009/10.aspx

0 голосов
/ 16 мая 2011

Вы установили "копировать локально" в свойствах всех ссылочных сборок в проекте?

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