实体框架代码优先:使用不需要单独安装的数据库?

时间:2011-03-26 12:00:41

标签: c# database entity-framework sqlite ef-code-first

我知道SQL Server Express将与Code First一起使用并且是免费的,但我的客户端不喜欢额外的安装步骤。是否有其他我不能单独安装的数据库?这只是一个单一的用户应用程序,所以我真的不需要一个强大的数据库...只需要存储和一种强制数据完整性的方法。

我自己做了一点研究并提出了:

  • SQLLite
  • SQL Server Compact Edition 4
  • MS Access

但是,如果我错了,请纠正我,这些都不适用于实体框架......任何想法?

编辑:简而言之:我需要一个支持EF的嵌入式数据库。

2 个答案:

答案 0 :(得分:5)

EF支持Sql Server CE和SqlLite。不支持MS Access。受支持的第三方提供的列表是here。我建议使用Sql CE。

编辑:

我认为您只需要安装Sql Server CE 4.0的工具,然后就可以在连接字符串中定义数据库了:

<configuration>
  <connectionStrings>
    <add name="Context" providerName="System.Data.SqlServerCe.4.0" 
         connectionString="Data Source=TestDb.sdf"/>
  </connectionStrings>
</configuration>

连接字符串的名称应该是派生上下文的名称。

答案 1 :(得分:2)

试试这个教程。我发现很容易理解。

EF代码首先使用sql compact

这是针对asp.net mvc的,但它是在C#中,应该足够简单,可以选择相关的位

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx