如何使用特定的应用配置文件

时间:2013-02-27 18:05:59

标签: c# app-config

以下代码不起作用。它无法从TestApp.Config文件中获取应用程序设置。你知道为什么吗?我该如何解决?

  public void GetConfig()
  {
     AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", @"C:\dev\VS\ProofOfConcept\ProofOfConcept\TestApp.config");
     var a = ConfigurationManager.AppSettings;
  }

1 个答案:

答案 0 :(得分:4)

post可能有所帮助:

在此处发布的解决方案中,您可以在致电ResetConfigurationMechanism()后致电方法CurrentDomain.SetData(...);

private static void ResetConfigMechanism()
{
   typeof(ConfigurationManager)
   .GetField("s_initState", BindingFlags.NonPublic | BindingFlags.Static)                                                                                   
   .SetValue(null, 0);

   typeof(ConfigurationManager)
   .GetField("s_configSystem", BindingFlags.NonPublic | BindingFlags.Static)
   .SetValue(null, null);

   typeof(ConfigurationManager)
   .Assembly.GetTypes()
   .Where(x => x.FullName == 
      "System.Configuration.ClientConfigPaths")
   .First()
   .GetField("s_current", BindingFlags.NonPublic | BindingFlags.Static)
   .SetValue(null, null);
}