2010-11-18 13 views
13

からドライバを作成できませんでしたはここで例外を発生させたコードだNHibernate.Driver.SQLite20Driver

public Configuration GetConfiguration() 
    { 
     var persister = SQLiteConfiguration 
      .Standard 
      .UsingFile("Test.db") 
      .ShowSql(); 


     var configuration = Fluently 
      .Configure() 
      .Database(persister) 
      .Mappings(map => map.FluentMappings.AddFromAssemblyOf<WordMap>()) 
      .BuildConfiguration(); 

     new SchemaExport(configuration).Execute(true, true, false); 

     return configuration; 

    } 

フル例外テキスト:

失敗:NHibernate.HibernateException:ドライバを作成できませんでした。 NHibernate.Driver.SQLite20Driver、NHibernate、Version = 2.1.2.4000、 からの カルチャ=ニュートラル、PublicKeyToken = aa95f207798dfdb4。

----> System.Reflection.TargetInvocationException:例外が呼び出しのターゲットによってスローされました。

----> NHibernate.HibernateException:アセンブリSystem.Data.SQLiteのIDbCommandおよびIDbConnectionの実装が見つかりませんでした 。アセンブリSystem.Data.SQLiteがアプリケーションディレクトリまたはグローバルアセンブリキャッシュに にあることを確認します。 アセンブリがGACにある場合は、 アプリケーション構成ファイルの要素を使用して、 アセンブリのフルネームを指定します。

NHibernateのバージョンがSystem.Data.SQLiteの2.1.2.4000
バージョンである1.0.66.0
ターゲットFrameworkは3.5(x86の)
System.Data.SQLiteため ローカルコピーがONとなっています。

何が問題なのですか。

+0

あなたが見たことがありますか?http://stackoverflow.com/questions/845490/fluentnhibernate-and-sqlite http://stackoverflow.com/questions/1460045/sql-data-sqllite-version-with-nhibernate-2-1 http:// stackoverflow。com/questions/1041271/how-to-configure-sqlite-to-run-with-nhibernate-where-assembly-resolves-system-dat –

答えて

2

LocalCopyがオンの場合、サブプロジェクトのbinディレクトリではなく、起動プロジェクトのSystem.Data.SQLiteが検索されます。

6

NHibernate.Driver.SQLite20Driver、NHibernateは、バージョン= 2.1.2.4000からドライバを作成できませんでした、カルチャニュートラル、PublicKeyToken = = aa95f207798dfdb4

ソリューションを参照してください。 64ビットマシンで64ビットマシンでテストを実行する

私は助けてくれることを願っています。

9

はちょうどあなたのアプリケーションのベースディレクトリにSystem.Data.SQLite.dllライブラリをコピーコーディング陽気が(特にNHibernate.dllライブラリが置かれています)。 VSの下に参照として追加する必要はありません。

よろしく
Bronek

6

私はSQLiteのNuGetパッケージをインストールし、それは私のために働きました。

関連する問題