http://wiki.fluentnhibernate.org/Getting_startedでFluentNHibernateチュートリアルを実行したところ、プロジェクトは正常にコンパイルされました。
ただし、ランタイムエラーが発生し、解決できないようです。エラーは、チュートリアルで確認できるCreateSessionFactoryメソッドで発生しています。ここにあります:
private static ISessionFactory CreateSessionFactory()
{
return Fluently.Configure()
.Database
(
SQLiteConfiguration.Standard
.UsingFile(DbFile)
)
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<FluentNHibernateSample.Program>())
.ExposeConfiguration(BuildSchema)
.BuildSessionFactory();
}
最も役立つのは、最も外側の例外から最も内側の例外までの例外チェーン(実際の単語)を提供することだと思います。
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フォルダーに入れます。エラーのグーグルに基づいて、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に置きました。私の環境を完全に複製するには、ここからすべてのファイルをoutput/binディレクトリに配置する必要があることに注意してください。
セス