gpt4 book ai didi

entity-framework-4 - 将SQL Server Compact与Entity Framework一起使用的连接字符串吗?

转载 作者:行者123 更新时间:2023-12-04 03:05:20 25 4
gpt4 key购买 nike

我已经尝试向Google进行此操作。我已经安装了SQL Server CE 4.0,并且具有EF 4.1,但是我无法获得正确的连接字符串。 connectionstrings.com上没有任何内容适用于我。

我只想创建一个SqlCeEngine对象,但是无论我尝试什么,我都会遇到一些异常。最近是

Unknown connection option in connection string



后面带有“元数据”,“应用程序”,“提供商”或“提供商连接字符串”。我知道EF需要连接字符串中的元数据。我无法想象如果没有“供应商连接字符串”怎么办。

到目前为止,我有这个:
<add name="DBContext" 
connectionString="provider connection string=&quot;Data Source=MyDbFile.sdf;Persist Security Info=False;&quot;"
providerName="System.Data.EntityClient" />

有一次我有了元数据:
<add name="DBContext" 
connectionString="metadata=res://*/Data.DBContext.csdl|res://*/Data.DBContext.ssdl|res://*/Data.DBContext.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=MyDbFile.sdf;Persist Security Info=False;&quot;"
providerName="System.Data.EntityClient" />

是否需要元数据?连接字符串的“app”部分中有什么内容?提供者应该是 System.Data.SqlClient还是某些SQL Server CE版本? (当我尝试添加引用时仍然找不到。添加引用窗口仍只包含 System.Data.SqlServerCe版本3.5.1.0。)还是什么都没有?

providerName属性中应该包含什么? System.Data.EntityClient是否正确?就像这里有10个不同的变量,每种组合给我一个同样神秘的新错误,没有一个对Google有用。我机智的尽头。这有可能吗?

最佳答案

您可以在App.config文件中尝试此操作(EF5代码优先迁移和SQL Server CE 4.0):

<connectionStrings>
<add name="DefaultConnection"
providerName="System.Data.SqlServerCe.4.0"
connectionString="Data Source=|DataDirectory|\Data\ProjectDb.sdf"/>
</connectionStrings>

在你的 ProjectDb类中:
class ProjectDb : DbContext
{
public ProjectDb()
: base("DefaultConnection")
{

}
}

它将像魅力一样工作。

您可以在这里找到更多信息: http://blogs.msdn.com/b/adonet/archive/2011/01/27/using-dbcontext-in-ef-feature-ctp5-part-2-connections-and-models.aspx

关于entity-framework-4 - 将SQL Server Compact与Entity Framework一起使用的连接字符串吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6947325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com