无法在NUnit中使用nHibernate加载DLL“SQLite.Interop.dll”

时间:2013-02-20 17:30:09

标签: c# sqlite nhibernate nunit

我已经与Nuget安装了FluentNHibernateSystem.Data.SQLite.MSIL

我写了一些单元测试并尝试执行它们。但我的测试设置失败了:

  

Probel.NDoctor.Statistics.UnitTests.SQLite.ChartQueryTest(TestFixtureSetUp):   SetUp:FluentNHibernate.Cfg.FluentConfigurationException:创建SessionFactory时使用了无效或不完整的配置。检查PotentialReasons集合,以及InnerException以获取更多详细信息。

     

----> System.Reflection.TargetInvocationException:调用目标抛出了异常。     ----> System.DllNotFoundException:无法加载DLL'SQLite.Interop.dll':找不到指定的模块。 (HRESULT异常:0x8007007E)

好吧,当我安装包SQLite.Interop.dll时,Nuget没有导入System.Data.SQLite.MSIL ...

我正在使用:

  • NHibernate 3.3.1.4000(安装FluentNHibernate 1.3.0.733时安装)
  • System.Data.SQLite.MSIL
  • NUnit 2.6.2.12296
  • Visual Studio 2010

注意所有这些dll导入都不是通过Nuget。

1 个答案:

答案 0 :(得分:0)

'SQLite.Interop.dll'包含在System.Data.SQLite Nuget包中。您安装的System.Data.SQLite.MSIL包仅包含ADO.NET提供程序。只需卸载System.Data.SQLite.MSIL并安装具有ADO.NET提供程序和非托管库的System.Data.SQLite即可。这应该可以解决你的问题。