我正在尝试将 NHibernate 实现到我的 Web 应用程序中。我遇到一个错误,其中说:
Method 'IsInstrumented' in type 'NHibernate.ByteCode.Castle.ProxyFactoryFactory' from assembly 'NHibernate.ByteCode.Castle, Version=2.1.2.4000, Culture=neutral,
PublicKeyToken=aa95f207798dfdb4' does not have an implementation.
有谁知道如何解决这个问题?
最佳答案
确保您已将以下 dll 复制到输出文件夹和 loaded通过 w3wp.exe(如果您使用 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:
关于nhibernate - 在 ASP.NET 网站中实现 NHibernate 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7059632/