我正在尝试将NHibernate实现到我的Web App中。我遇到一个错误,说:
'NHibernate.ByteCode.Castle.ProxyFactoryFactory'类型中的方法'IsInstrumented' 来自汇编'NHibernate.ByteCode.Castle,Version = 2.1.2.4000,Culture = neutral,
PublicKeyToken = aa95f207798dfdb4'没有实现。
有谁知道如何解决这个问题?
答案 0 :(得分:5)
确保将以下dll复制到输出文件夹并通过w3wp.exe复制到loaded(如果使用IIS):
你的NHibernate配置有这一行:
<property name="proxyfactory.factory_class">
NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
</property>
作为一种选择,您可以尝试升级到最新版本的NHibernate - 3.2。他们有一个内置的代理生成器,所以它应该更简单。你不需要这些额外的dll。如果你使用NHibernate 3.2,只需删除上面的配置行。
如果由于某些原因无法升级到3.2,您可以考虑使用不同的byte code providers。 NHibernate支持其中3个开箱即用。试试LinFu或Spring: