Невозможно загрузить тип NHibernate.ByteCode.Castle.ProxyFactoryFactory - PullRequest
0 голосов
/ 08 марта 2011

Поскольку я читаю и пробую каждую похожую тему безуспешно, я решил опубликовать свой вопрос. Мое решение имеет консольное приложение и библиотеку классов для доступа к данным. Конфигурация Nhibernate находится внутри appconfig в консольном приложении (которое я сейчас использую для отладки, как я сделаю после создания веб-приложения и перенести всю конфигурацию в web.config).

Исключение хорошо известно:

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

Шаги, которые я предпринял, чтобы решить эту проблему:

1) DLL в папке развертывания - в моей корзине есть следующие DLL:

Castle.Core.dll - v. 2.5.1 Iesi.Collections.dll - v.2.0.0.1002 log4net.dll - v. 1.2.10.0 NHibernate.ByteCode.Castle.dll - v.3.0.0.2001 NHibernate.dll - v.3.1.0.4000

2) Конфигурация содержит

имя = "proxyfactory.factory_class"> NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode

3) Я настроил свой проект MetaManager.Data для развертывания в процессоре x86 4) Все библиотеки DLL в моей папке bin указаны в проекте.

Я думаю, что это оно. Я не знаю, куда еще идти: (

Ответы [ 2 ]

1 голос
/ 08 марта 2011

Чтобы узнать, какие библиотеки загружены или отклонены каким компонентом, вы можете использовать «Средство просмотра журнала привязки сборки» (Fuslogvw.exe), которое принадлежит dotnetsdk. Если ведение журнала включено, это может показать, какие сборки загружены и какая сборка вызвала их загрузку.

Подробнее см. http://msdn.microsoft.com/en-us/library/e74a18c4(v=vs.80).aspx

0 голосов
/ 08 марта 2011

Я думаю, что версия сборок Iesi.Collections и NHibernate.ByteCode.Castle должна быть такой же, как для сборки NHibnernate, то есть 3.1.0.4000 (по крайней мере, это версия сборок, распространяемая с NH 3.1.0 GA).

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