我目前的解决方案中有三个项目,它们都有自己的App.config文件,并且具有完全相同的连接字符串。
是否有一种方法可以合并连接字符串和app.config文件,以便我只需要更改一个位置就可以了?
我目前的解决方案中有三个项目,它们都有自己的App.config文件,并且具有完全相同的连接字符串。
是否有一种方法可以合并连接字符串和app.config文件,以便我只需要更改一个位置就可以了?
您可以按照以下步骤在解决方案中的多个项目之间共享连接字符串:
在解决方案文件夹下创建一个名为ConnectionStrings.config
的文件,并在其中添加包含 connectionStrings
部分的连接字符串信息。
将此配置文件作为链接(添加现有项,添加为链接)添加到您的项目中。
Copy to Output Directory
设置为 始终复制
或 仅在较新时复制
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>
首先,看一下这篇文章。它描述了如何在多个项目之间共享相同的 app.config。
其次,再看另一篇文章,它描述了如何让不同的 app.config 文件引用一个包含连接字符串的共享 xml 文件。