使用configurationmanager从多个web.config文件中读取

Ste*_*a D 9 c# asp.net configurationmanager web-config

背景:

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

问题:

并非所有数据都将在此页面上更改,并将其保存到数据库中.当有人点击"编辑"链接时,我希望表单填充来自web.config文件的数据,当他们点击"保存"时,它会保存到数据库中.但是,使用配置管理器我只能从当前应用程序的web.config文件中提取数据.

问题:

  1. 有没有办法使用configurationmanager来选择web.config文件../{dynamic_app_id}/web.config
  2. 将它们作为普通的xml文件读取我的唯一选择?
  3. 这种方法有什么缺陷吗?
  4. 还有其他解决方案可能更好吗?

Gre*_*mar 17

您可以轻松读取任何配置文件.请参阅我的示例代码,其中我从外部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;
Run Code Online (Sandbox Code Playgroud)

快乐的编码和最好的问候!