FluentNHibernate是否支持SQL Server Compact Edition 4.0?

Nau*_*c20 6 fluent-nhibernate

我知道他们支持SQL CE.我认为他们上升到3.5 ??? 我刚刚下载了CE 4.0,我想在我的项目中测试它,但是我无法在FluentNHibernate中对它进行配置...

如果支持4.0:

我需要下载什么版本,有人可以给我一个如何实现它的示例吗?

Jak*_*art 10

FNH支持CE 4.0,试试这个配置:

var config = Fluently.Configure()
 .Database(MsSqlCeConfiguration.Standard.ConnectionString("Data Source=DatabaseFileName.sdf"))
 .Mappings(m =>
 {
     m.FluentMappings.AddFromAssembly(typeof(Entity).Assembly);
 })
 .BuildConfiguration();
Run Code Online (Sandbox Code Playgroud)

应通过AddFromAssembly添加具有实体映射的程序集.DatabaseFileName.sdf是数据库文件名的路径和文件名.路径可以是或绝对的或相对于应用程序的工作目录(Windows应用程序:System.AppDomain.CurrentDomain.BaseDirectory; Web应用程序:System.AppDomain.CurrentDomain.RelativeSearchPath).

在FNH1.0,NH2.1和SQL Server CE 4.0上测试.

编辑:数据库文件必须由数据库引擎创建:

using (var engine = new SqlCeEngine(connectionString))
{
    engine.CreateDatabase();
}
Run Code Online (Sandbox Code Playgroud)

以下是CE 3.5的示例,但它也适用于CE 4.0:http://nhdatabasescopes.codeplex.com/SourceControl/changeset/view/f9e824a457e8#DatabaseScopes%2fMsSqlCeInFilePrivateScope.cs.