2010-05-10 78 views
10

我需要解析位于另一个项目中的配置文件。我知道ConfigurationManager默认读取app.config文件,但是如何让它读取特定的配置文件?如何让ConfigurationManager读取除app.config以外的配置文件?

+0

默认情况下,应用程序从具有应用程序入口点的项目中读取配置文件。如果您不想从项目中的配置文件读取,请使用[ConfigurationManager.OpenMappedExeConfiguration] [0]方法。这是一个使用这种方法的[示例] [1]。 [0]:http://msdn.microsoft.com/en-us/library/ms134269.aspx [1]:http://dotnetanalysis.blogspot.com/2012/08/how-to-read-from- config-file-within.html – Arcturus 2012-08-09 16:01:45

回答

17
// Create a filemap refering the config file. 
ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap(); 
fileMap.ExeConfigFilename = configFilePath; 

// Retrieve the config file. 
Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None); 
+0

不错的作品...... – nawfal 2012-03-06 06:52:55

1

或者这样:

var fileMap = new ConfigurationFileMap(configFilePath); 
Configuration config = ConfigurationManager.OpenMappedMachineConfiguration(fileMap); 

但你仍然有自定义配置节的一个问题。

相关问题