连接字符串c#实体框架SQL Server Express

本文关键字:SQL Server Express 框架 实体 字符串 连接 | 更新日期: 2023-09-27 18:05:38

我使用c# WPF EF6.0和SQL Server Express作为最终程序。

我已经创建了一个设置文件与高级安装程序,创建数据库通过脚本和SQL Server Express在

C:'Program Files'Microsoft SQL Server'MSSQL11.SQLEXPRESS'MSSQL'DATA

和我改变了我的字符串连接从

<add name="MyDBEntities" 
     connectionString="metadata=res://*/MyDBModel.csdl|res://*/MyDBModel.ssdl|res://*/MyDBModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(LocalDB)'v11.0;attachdbfilename=|DataDirectory|'MyDB.mdf;integrated security=True;connect timeout=30;MultipleActiveResultSets=True;App=EntityFramework&quot;" 
     providerName="System.Data.EntityClient" />

<add name="MyDBEntities" 
     connectionString="metadata=res://*/MyDBModel.csdl|
                       res://*/MyDBModel.ssdl|
                       res://*/MyDBModel.msl;
                       provider=System.Data.SqlClient;
                       provider connection string=&quot;
                             Data source=.'SQLExpress;
                             integrated security=True;
                             MultipleActiveResultSets=True;
                             Initial Catalog=MyDB;
                             App=EntityFramework&quot;" 
     providerName="System.Data.EntityClient" />  

我在Visual Studio 2013中安装了。net Framework 4.5和SQL Server 2012 sp1 v11.0.300

当我安装程序时,一切正常,但是当我运行程序时,它在第一次启动时停止工作。我认为连接字符串有问题。如果我在Visual Studio中单击debug,我会看到这个错误

类型为"System"的未处理异常。附加信息:在应用程序配置文件中找不到名为"MyDBEntities"的连接字符串。

连接字符串c#实体框架SQL Server Express

原因是您没有将数据库文件附加到本地数据库引擎。尝试使用可用的适当SQL Server方法。您的应用程序(安装后)无法在本地DB引擎中找到数据库

最后我无法用Advanced Installer创建安装文件。但它是由Install Shield生成的。我的问题是从数据库插入或删除或编辑。我把我的程序安装在其他驱动器上,我的问题解决了。原因是一个玩笑,C中的程序文件是readonly