我对.NET项目中的app.config和web.config文件有几个问题。
1.如果我有一个主要项目引用一个辅助项目,并且每个项目都有自己的设置部分,有没有办法可以自动将引用的项目设置复制到主app.config?
如果我从prod环境中删除配置文件,我的程序集将加载编译时它具有的默认值。我可以以某种方式覆盖这种行为吗?
我可以为同一个项目配置多个配置文件,每个配置文件用于不同的环境吗?就像Debug的配置文件,Release的一个?
答案 0 :(得分:0)
ExeConfigurationFileMap configFile = new ExeConfigurationFileMap();
configFile.ExeConfigFilename = "customConfigFile.xml";
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFile, ConfigurationUserLevel.None);
System.Configuration.KeyValueConfigurationCollection settings = config.AppSettings.Settings;
您可以加载专用于特定项目的部分:
config.GetSection("SomeSection")
2/3。要在两个文件之间进行调试和发布,您可以使用上面的示例,并用于在Debug中执行特定代码:
#define DEBUG
// ...
#if DEBUG
Console.WriteLine("Debug version");
#endif