我通過流利的NHibernate教程在http://wiki.fluentnhibernate.org/Getting_started工作,項目編譯罰款。運行時錯誤,當試圖運行流利NHibernate教程示例
但是,我得到一個運行時錯誤,我似乎無法解決它。錯誤發生在您可以在教程中看到的CreateSessionFactory方法中。那就是:
private static ISessionFactory CreateSessionFactory()
{
return Fluently.Configure()
.Database
(
SQLiteConfiguration.Standard
.UsingFile(DbFile)
)
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<FluentNHibernateSample.Program>())
.ExposeConfiguration(BuildSchema)
.BuildSessionFactory();
}
我覺得最helpfule要做的是給你的異常鏈(是一個真正的字)從最外層例外內最例外:
An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
Could not compile the mapping document: (XmlDocument)
persistent class FluentNHibernateSample.Entities.Employee, FluentNHibernate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null not found
Could not load file or assembly 'FluentNHibernate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
本教程並不清楚如何設置引用(或者至少看起來不完全是基於最內部的異常),所以我從http://fluentnhibernate.org/downloads/releases/fluentnhibernate-1.1.zip獲得編譯後的程序集並將它們複製到libs文件夾中。基於googling的錯誤,我設置了對FluentNHibernate,NHibernate和NHibernate.ByteCode.Castle程序集的引用。我將下載頁面中的所有DLL複製到bin目錄中,我認爲所有的引用都可以解決。 (這是我對它的工作原理的理解)。無論如何,這裏是我複製到bin中的文件列表。
Antlr3.Runtime.dll
FluentNHibernate.dll
FluentNHibernate.exe
FluentNHibernate.pdb
FluentNHibernate.vshost.exe
FluentNHibernate.vshost.exe.manifest
FluentNHibernate.xml
Iesi.Collections.dll
Iesi.Collections.xml
log4net.dll
log4net.xml
NHibernate.ByteCode.Castle.dll
NHibernate.dll
NHibernate.xml
我也將System.Data.Sqlite程序集複製到bin中。
對於我的生活,我無法弄清楚問題是什麼。我嘗試了所有我能想到的,並搜索了多個錯誤消息,但沒有爲我工作。
幫助!我在這方面浪費了幾個小時。
編輯
我已經把源文件的項目在http://dl.dropbox.com/u/8824836/FluentNHibernateExample.zip。請記住,要完全複製我的環境,您需要將來自here的所有文件放到output/bin目錄中。
賽斯
感謝您的建議。如前所述,因爲這些文件是在流利的nhibernate下載zip ...他們已經被添加到我的bin文件夾。但是,根據您的建議,我在我的項目中添加了對這些文件的引用。但我得到了同樣的結果。 Seth – 2010-08-18 02:40:19