【发布时间】:2010-11-30 00:18:04
【问题描述】:
假设我有一个运行着相应 web.config 文件的 ASP.NET 网站,该文件包含一堆用于数据库访问的连接字符串。我还有一个小助手控制台程序(部署到与 Web 应用程序相同的文件夹),用于执行维护任务和其他工作。这个帮助程序与网络应用程序共享一堆 dll,所以我必须为它保留一个单独的 bla.exe.config 文件,以便共享的 dll 找到连接字符串等。 我希望能够让控制台应用程序使用 web.config 而不是拥有自己的配置文件。
到目前为止,我已经设法在运行时加载 appSettings(使用 ConfigurationManager.OpenMappedExeConfiguration,循环通过 appsettingts 并将它们动态添加到 ConfigurationManager.AppSettings 集合中),但 ConfigurationManager.ConnectionStrings 成员显然是只读的,所以我无法将 web.config 的连接字符串“注入”到其中。
有什么想法吗?
【问题讨论】:
-
辅助控制台程序是同一个 Visual Studio 解决方案的一部分吗?如果是这样,您可以考虑使用 NANT 脚本构建配置文件。
-
这个想法是有一个单一的配置文件,以降低维护成本并防止未来由于配置文件的差异而导致的SNAFU。
标签: c# web-config connection-string