Убедитесь, что у вас есть следующие dll, скопированные в выходную папку и загруженные вашим процессом:
- NHibernate.ByteCode.Castle.dll
- Castle.Core.dll
- NHibernate.dll
- Iesi.Collections.dll
- log4net.dll
И ваша конфигурация NHibernate имеет следующую строку:
<property name="proxyfactory.factory_class">
NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
</property>
Как вариант, вы можете попробовать обновить его до последней версии NHibernate - 3.2.У них есть встроенный прокси-генератор, так что это должно быть проще для вас.Вам не понадобятся эти дополнительные библиотеки.Просто удалите приведенную выше строку конфигурации, если вы используете NHibernate 3.2.
Если по каким-либо причинам вы не можете выполнить обновление до 3.2, вы можете рассмотреть возможность использования различных поставщиков байт-кода .NHibernate поддерживает 3 из них из коробки.Попробуйте LinFu или Spring:
- NHibernate.ByteCode.Castle.ProxyFactoryFactory
- NHibernate.ByteCode.LinFu.ProxyFactoryFactory
- NHibernate.ByteCode.Spring.ProxyFactoryFactor