2010-05-10 12 views
10

Potrzebuję przeanalizować plik konfiguracyjny, który znajduje się w innym projekcie. Wiem, że ConfigurationManager domyślnie odczytuje plik app.config, ale jak to zrobić, aby odczytał ten konkretny plik konfiguracyjny?Jak ustawić program ConfigurationManager w pliku konfiguracyjnym innym niż app.config?

+0

Domyślnie aplikacja odczytuje plik konfiguracyjny z projektu, który ma punkt wejścia do aplikacji. Jeśli zamiast tego chcesz odczytać plik konfiguracyjny w projekcie, użyj metody [ConfigurationManager.OpenMappedExeConfiguration] [0]. Oto [przykład] [1], który używa tej metody. [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

Odpowiedz

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

dobra robota ...... – nawfal

1

Albo tak:

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

Ale nadal będą mieć problem z sekcji konfiguracji niestandardowej.