【发布时间】:2017-03-06 13:12:41
【问题描述】:
我有一个项目,我在其中为每个环境的连接字符串维护单独的 app.config 文件,例如,用于开发环境的 Dev.config、用于 QA 的 QA.config 等。我有一个主 app.config 文件我只需将 env 键入为“Dev”或“QA”,然后激活特定于 env 的连接字符串,如下所示。
开发配置
<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
<add name="connection1" connectionString="<dev_string>" />
<add name="connection2" connectionString="<dev_string>"/>
</connectionStrings>
QA.config
<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
<add name="connection1" connectionString="<qa_string>" />
<add name="connection2" connectionString="<qa_string>"/>
</connectionStrings>
App.config
<connectionStrings configSource="ConnectionStrings\Dev.config">
</connectionStrings>
但是,现在我有一个请求。要实现跨环境功能的地方。解决此问题的最佳方法是什么?我可以在主 app.config 中添加每个连接字符串,方法是给它一个特定于环境的名称,但我觉得这可能不是最好的方法。
那么,有没有办法仍然保留特定于 env 的配置文件并在不同命名空间下的主 app.config 中的所有环境中加载所有连接字符串或避免键重复错误?
提前感谢所有帮助...
【问题讨论】:
-
奇数要求
标签: c# .net web-config connection-string app-config