我試圖將NHibernate實現到我的Web App中。我遇到其說一個錯誤:在ASP.NET網站中實現NHibernate時出錯
法在類型 'NHibernate.ByteCode.Castle.ProxyFactoryFactory' 從程序集「NHibernate.ByteCode.Castle 'IsInstrumented',版本= 2.1.2.4000文化=中性,
PublicKeyToken = aa95f207798dfdb4'沒有實現。
有誰知道如何解決這個問題?
我試圖將NHibernate實現到我的Web App中。我遇到其說一個錯誤:在ASP.NET網站中實現NHibernate時出錯
法在類型 'NHibernate.ByteCode.Castle.ProxyFactoryFactory' 從程序集「NHibernate.ByteCode.Castle 'IsInstrumented',版本= 2.1.2.4000文化=中性,
PublicKeyToken = aa95f207798dfdb4'沒有實現。
有誰知道如何解決這個問題?
確保你有以下的w3wp.exe的複製到輸出文件夾和loaded dll文件(如果您使用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個開箱即用。嘗試李林甫或Spring:
我發現在nhibernate 3.2中有defaultproxyfactory。它是什麼?是林福還是城堡?我需要使用Castle,因爲我可能需要Windsor和NserviceBus –
@TJ:使用Castle和NServiceBus不應該干擾NHibernate 3.2的內置字節碼提供程序。 – Dmitry
我們需要更多的詳情。 – jason