2010-05-10 17 views
10

J'ai besoin d'analyser un fichier de configuration situé dans un autre projet. Je sais que ConfigurationManager lit le fichier app.config par défaut, mais comment faire pour lire ce fichier de configuration particulier?Comment faire pour configurer ConfigurationManager lire un fichier de configuration autre que app.config?

+0

Par défaut, l'application lit le fichier de configuration du projet qui a le point d'entrée dans l'application. Si vous préférez lire à partir d'un fichier de configuration dans le projet, utilisez la méthode [ConfigurationManager.OpenMappedExeConfiguration] [0]. Voici un [exemple] [1] qui utilise cette méthode. [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

Répondre

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

beau travail ...... – nawfal

1

Ou comme ceci:

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

Mais vous aurez toujours un problème avec des sections de configuration personnalisée.