c# - 使用 configurationmanager 读取多个 web.config 文件

标签 c# asp.net web-config configurationmanager

背景:

我有一些数据存储在大约 100 个 Web 应用程序的 web.config 文件中。这些数据逐渐转移到数据库中。网页将显示 web.config 数据,直到有人单击“编辑”链接,在这种情况下,他们将被重定向到一个网页,该网页将允许他们更新此数据,并将其保存在数据库中。

问题:

并不是所有的数据都会在这个页面上被更改,这将把它保存到数据库中。当有人单击“编辑”链接时,我希望表单使用 web.config 文件中的数据填充,当他们单击“保存”时,将其保存到数据库中。但是,使用 configurationmanager 我只能让它从当前应用程序的 web.config 文件中提取数据。

问题:

  1. 有没有办法使用配置管理器从 ../{dynamic_app_id}/web.config 中选择 web.config 文件?
  2. 将它们作为纯 xml 文件读取是我唯一的选择吗?
  3. 这种方法有什么缺陷吗?
  4. 是否还有其他可能效果更好的解决方案?

最佳答案

您可以轻松阅读任何配置文件。请查看我从外部 app.config 文件读取应用程序设置的示例代码:

        System.Configuration.KeyValueConfigurationCollection settings;
        System.Configuration.Configuration config;

        System.Configuration.ExeConfigurationFileMap configFile = new System.Configuration.ExeConfigurationFileMap();
        configFile.ExeConfigFilename = "my_file.config";
        config = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(configFile, System.Configuration.ConfigurationUserLevel.None);
        settings = config.AppSettings.Settings;

祝您编码愉快,致以最诚挚的问候!

关于c# - 使用 configurationmanager 读取多个 web.config 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12062045/

相关文章:

asp.net - 在 jQuery 中引用 ASP.NET 控件的最佳实践

asp.net - 如何编译x64 asp.net网站?

c# - 滑动覆盖面板

c# - ISupportIncrementalLoading 只触发一次

C# 将 GMT 日期字符串解析为 DateTime

c# - System.Data.OracleClient 需要 Oracle 客户端软件版本 8.1.7 或更高版本

.net - 样式指南/布局 web.config 和 app.config 以获得持续支持的最佳方式

WCF IIS 服务器配置

c# - 当 web.config 不可用时如何解决对 applicationSettings 的引用

c# - Windows API : handling keypress event of external window application through C#