C# 如何连接到C中的.sdf本地数据库文件#
我正在使用本地SQL Server CE数据库文件(C# 如何连接到C中的.sdf本地数据库文件#,c#,.net,entity-framework,sql-server-ce,connection-string,C#,.net,Entity Framework,Sql Server Ce,Connection String,我正在使用本地SQL Server CE数据库文件(.sdf)和实体框架执行任务 我已经创建了模型,现在实体框架应该将它们映射到本地数据库 我的Main方法中有此代码,该方法将一些数据插入数据库(以进行检查): 这是我的连接字符串: <connectionStrings> <add name="Connection" connectionString="Data source=|DataDirectory|\LocalDB.sdf""
.sdf
)和实体框架执行任务
我已经创建了模型,现在实体框架应该将它们映射到本地数据库
我的Main
方法中有此代码,该方法将一些数据插入数据库(以进行检查):
这是我的连接字符串:
<connectionStrings>
<add name="Connection"
connectionString="Data source=|DataDirectory|\LocalDB.sdf""
providerName="System.Data.EntityClient" />
</connectionStrings>
您的连接字符串中缺少Server=(localdb)\v11.0
,以指示它是localdb连接。
除此之外,您的连接字符串中还有应删除的“
”
有关连接字符串外观的完整详细信息可在此页面上找到
可以找到连接字符串的示例(向下滚动到我认为这是一个Sql Server压缩文件,因此您的提供程序需要是System.Data.SqlServerCe提供程序之一。首先安装此nuget软件包,然后将连接字符串设置为somting,如下所示:
<connectionStrings>
<add name="connection" connectionString="Data Source=|DataDirectory|\TestDb.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
**注意:**默认情况下,实体框架将创建TestDb.sdf,如果它不存在于
您可以使用解决方案\bin\Debug
目录,部署后它将位于C:\Users\YourUserName\AppData\Roaming
此目录中
<connectionStrings>
<add name="MyCS" connectionString="Data Source=|DataDirectory|\Database1.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
谢谢您的回答,但这给了我找不到具有固定名称“System.Data.SqlServerCe.4.0”的ADO.NET提供程序的实体框架提供程序。
错误您也必须安装EntityFramework…只需安装它,然后按照我提供的步骤进行操作,它应该可以工作。我认为它可以工作,但我找不到.sdf file anywhere:(该DataDirectory
指向何处?它表示关键字不受支持:“服务器”。
:(
<connectionStrings>
<add name="connection" connectionString="Data Source=|DataDirectory|\TestDb.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
<connectionStrings>
<add name="MyCS" connectionString="Data Source=|DataDirectory|\Database1.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>