我如何配置实体框架使用不同的连接字符串取决于其环境
本文关键字:连接 字符串 环境 取决于 何配置 配置 框架 实体 | 更新日期: 2023-09-27 18:08:03
我的公司根据项目所处的开发阶段使用不同的数据库。目前,我正试图推动实体框架+ LINQ的采用,但当被问及这将如何在我们的多个环境中工作时,我遇到了一个绊脚石。
他们的印象是必须为每个环境手动更改,因此将花费很长时间来部署。
我如何配置EF Database-First在开发、测试和生产服务器上使用不同的连接?
我可以设置一些变量吗?我错过了什么选择吗?
编辑:管理调试和发布连接字符串的可能副本
您可以使用app.config或web指定应用程序使用的连接字符串。配置文件,具体取决于您正在使用的项目类型。
阅读这个伟大的文档:http://msdn.microsoft.com/en-us/data/jj592674
对于使用EF的数据库优先应用程序,下面是一个示例app.config:
<configuration>
<connectionStrings>
<add name="Northwind_Entities"
connectionString="metadata=res://*/Northwind.csdl|
res://*/Northwind.ssdl|
res://*/Northwind.msl;
provider=System.Data.SqlClient;
provider connection string=
"Data Source=.'sqlexpress;
Initial Catalog=Northwind;
Integrated Security=True;
MultipleActiveResultSets=True""
providerName="System.Data.EntityClient"/>
</connectionStrings>
</configuration>
你可以在调试和发布期间使用不同的app.config(这里有说明http://mitasoft.wordpress.com/2011/09/28/multipleappconfig/),这使得EF在不同的环境中选择不同的配置非常容易。
根据你的。net版本,你可以使用web.config.debug和web.config.release
这是一个相关的SO问题,有更多的信息