在該節點的完整語法應該是這樣的:
<property name="proxyfactory.factory_class">
NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu
</property>
您可以驗證這是你的全部文本?還請確保您的DLL具有以下內容:
LinFu.DynamicProxy.dll
NHibernate.ByteCode.LinFu.dll
希望這會有所幫助。我用這個延遲加載,並將其與2.1.0GA分支成功作品(即使我們的分支機構有一些樹幹回遷修復(SqlServerCE問題)
更新1
好吧,在我的項目我參考下面的組件:
Antlr3.Runtime.dll
Iesi.Collections.dll
LinFu.DynamicProxy.dll
log4net.dll
NHibernate.byteCode.LinFu.dll
NHibernate.dll
你也可以發表您充分的hibernate.cfg.xml,NHibernate的配置文件?
更新2
是否啓用log4net的輸出?我發現最簡單的方法是從代碼中獲得。試着在你的代碼做這樣的事情,所以你可以得到一些先進的日誌記錄:
FileAppender appender = new FileAppender();
appender.File = "nhibernate.log";
appender.LockingModel = new FileAppender.MinimalLock();
appender.ImmediateFlush = true;
pattern = "%timestamp, %thread, %level, %logger, %ndc,%message %newline";
PatternLayout pl = new PatternLayout(pattern);
appender.Layout = pl;
appender.ActivateOptions();
appender.Threshold = log4net.Core.Level.Verbose;
log4net.Config.BasicConfigurator.Configure(appender);
有了這個輸出,我們也許能夠進一步找到問題的原因是什麼。
將很高興得到您的項目的副本,以便我可以調查並幫助您找到您的錯誤的原因。
更新3
好了,我也跟着教程,這些都是我的筆記,我能得到一個正在運行的實例到更新執行:
- 添加的虛擬子句FirstSolution /Domain/Product.cs
- 新增LinFu.DynamicProxy和NHibernate.ByteCode.LinFu組件,以FirstSolution文件
- 新增NHibernate.ByteCode.LinFu.Prox yFactoryFactory,NHibernate.ByteCode.LinFu到配置文件
- 更改了新的SchemaExport(cfg).Execute(false,true,false,false);到新的SchemaExport(cfg).Execute(false,true,false);
我只是做這個教程,看看我是否得到相同的錯誤。你能確認你使用的是2.1.0GA嗎? – Wayne 2009-11-12 02:05:03