Nhibernate Session 01的夏天,为什么我得到NHibernate.Bytecode.ProxyFactoryFactoryNotConfiguredException?

我是全新的NHibernate,跟随www.summerofnhibernate.com的截屏video,非常棒。 在演示结束时,unit testing应该通过,但对我来说它说:

NHibernate.Bytecode.ProxyFactoryFactoryNotConfiguredException: The ProxyFactoryFactory was not configured. 

我究竟做错了什么?

我打赌你使用NH 2.1,而截屏使用2.0。

在2.1中你必须将proxyfactory.factory_class设置为NHibernate.ByteCode.Castle.ProxyFactoryFactory,NHibernate.ByteCode.LinFu.ProxyFactoryFactory或NHibernate.ByteCode.Spring.ProxyFactoryFactor之一

我问这个是因为找到答案比我想要的要花了很长时间。 如果我让其他新手误入歧途,请纠正我。

显然,自从制作截屏video以来,NHibernate现在要求你指定ProxyFactoryFactory,我不知道那是什么,如果你正在搜索它,你可能也不会。

将其添加到您的hibernate.cfg.xml:

 NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle 

还要将这些文件添加到lib \ NHibernate文件夹中

NHibernate.ByteCode.Castle.dll

 Castle.Core.dll Castle.Core.xml Castle.DynamicProxy2.dll Castle.DynamicProxy2.xml 

并将NHibernate.ByteCode.Castle.dll的引用添加到DataAccessLayerTest项目

我可能会离开,但经过几个小时的挖掘,我可以进入下一个截屏video,我希望你也是。

这是一个非常有用的答案。 我使用MBUnit(3.1.0.0)的Gallio版本下载了最新版本的NHibernate(2.1.1.GA),但是当它成为运行测试的时候就开始遇到问题。 将mlusby建议的四个文件和额外的行添加到hibernate.cfg.xml文件中解决了我的问题。 这是我在互联网上找到的唯一可行的解​​决方案。 谢谢!