以下是产生问题的步骤。
.mdf
文件localdb(v12),并创建包含一些数据的表.mdf
文件在事件Form1_load上,我使用Entity Framework填充了gridview,如下所示:
private void Form1_Load(object sender, EventArgs e)
{
using (TestDBEntities db = new TestDBEntities() )
{
dataGridView1.DataSource = db.Customers.ToList();
}
}
到目前为止,一切正常,应用程序在开发PC上运行良好。
但是当尝试使用ClickOnce或InstallShield将应用程序部署到另一台PC时,我收到有关连接字符串的错误。
如何解决此错误?
以下是app.config
文件:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="TestDBEntities"
connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string='data source=(LocalDB)\MSSQLLocalDB;attachdbfilename=|DataDirectory|\TestDB.mdf;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework'"
providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="mssqllocaldb" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient"
type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>
,这是错误消息
我在目标PC上安装了.Net framework 4和SqlLocalDB.msi
,但问题仍然存在,请帮忙