要在NHibernate的内存中使用SQLite,我是否必须安装任何东西?

时间:2009-11-30 16:54:04

标签: nhibernate sqlite

我知道NHibernate有一个SQLite驱动程序,但是我必须在本地安装什么才能使用内存版本?

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

当你想在内存中运行时,不必安装任何东西。只需引用dll(copy-local true)

dll的名称是System.Data.SQLite.dll 您可以在source forge

下载

当我浏览FluentNhibernate示例时,我开始在内存中使用sqllite。所以我从FluentNhibernate复制了它。我使用以下配置:

FluentConfiguration configuration = Fluently.Configure()
  .Database(() =>
    SQLiteConfiguration.Standard
     .InMemory()
     .ProxyFactoryFactory("NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle")
     .Mappings(mappingConfiguration => mappingConfiguration
     .FluentMappings
     .AddFromAssemblyOf<User>()); 
SessionSource sessionSource = new SingleConnectionSessionSourceForSQLiteInMemoryTesting(configuration);
ISession session = sessionSource.CreateSession()

答案 2 :(得分:0)

莫因,

hab auch lange gesucht,aber nun gefunden。 Füralledie inmemory mit NHibernate nicht zum laufen bekommen,bitte im visual studio folgende Einstellung bei den testsettings:

  • Hosts,dort unter以32位或64位进程运行测试:“在64位计算机上以64位进程运行测试”

Ich brauche es innerhalb meiner unittests。

希望我能提供帮助。

答案 3 :(得分:0)

无法从NHibernate.Driver.SQLite20Driver,NHibernate,Version = 2.1.2.4000,Culture = neutral,PublicKeyToken = aa95f207798dfdb4

创建驱动程序

解决方案:

请在Testsettings中进行一些设置: 选择主机 - &gt;选择在32位或64位进程中运行测试 - &gt; 选择“在64位机器上运行64位进程测试”

多数民众赞成。这有用还是我。

希望我能提供帮助。

快乐编码