【发布时间】:2013-04-15 19:14:56
【问题描述】:
我的解决方案中目前有三个项目,它们都有自己的 App.config 文件,并且具有完全相同的连接字符串。
有没有办法整合连接字符串/app.config 文件,以便我只需要对一个位置进行更改?
【问题讨论】:
标签: c# connection-string app-config
我的解决方案中目前有三个项目,它们都有自己的 App.config 文件,并且具有完全相同的连接字符串。
有没有办法整合连接字符串/app.config 文件,以便我只需要对一个位置进行更改?
【问题讨论】:
标签: c# connection-string app-config
首先,看看这篇文章。它描述了如何在多个项目之间共享相同的 app.config。
其次,看看另一篇文章,它描述了如何让不同的 app.config 文件引用一个包含连接字符串的共享 xml 文件。
Use XML includes or config references in app.config to include other config files' settings
【讨论】:
您可以在一个解决方案中的多个项目之间共享连接字符串,如下所示:
在解决方案文件夹下使用您的连接字符串创建一个ConnectionStrings.config 文件,该文件应仅包含connectionStrings 部分
在您的项目中,将此配置文件添加为链接(添加现有项目,添加为链接)
Copy to Output Directory设置为Copy always或Copy if newer
App.config 中,使用configSource 属性指向链接的ConnectionStrings.config 文件:
<connectionStrings configSource="ConnectionStrings.config" />
ConnectionStrings.config
<connectionStrings>
<add name="myConnStr" connectionString="Data Source=(local); Initial Catalog=MyDB;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
</connectionStrings>
App.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
...
<connectionStrings configSource="ConnectionStrings.config" />
...
</configuration>
【讨论】: