Heim >Backend-Entwicklung >C++ >Kann der ConfigurationManager von .NET nicht assemblybezogene Konfigurationsdateien laden?
Problem:
Die .NET ConfigurationManager-Klasse wird normalerweise für Assembly-Konfigurationsdateien verwendet. Wie können Sie eine separate, unabhängige Konfigurationsdatei laden und nutzen?
Lösung:
Während ConfigurationManager.OpenExeConfiguration()
auf Assembly-spezifische Konfigurationsdateien abzielt, können Sie OpenMappedExeConfiguration()
nutzen, um benutzerdefinierte Konfigurationsdateien zu laden. So geht's:
ExeConfigurationFileMap
-Objekt:<code class="language-csharp">ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();</code>
ExeConfigFilename
auf den vollständigen Pfad Ihrer benutzerdefinierten Konfigurationsdatei fest. Beachten Sie, dass die Dateierweiterung flexibel ist:<code class="language-csharp">configMap.ExeConfigFilename = @"d:\test\justAConfigFile.config.whateverYouLikeExtension";</code>
ConfigurationManager.OpenMappedExeConfiguration()
, um die angegebene Datei zu öffnen:<code class="language-csharp">Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);</code>
<code class="language-csharp">config.AppSettings.Settings["test"].Value;</code>
Denken Sie daran, dass die Dateierweiterung, die Sie für Ihre benutzerdefinierte Konfigurationsdatei verwenden, willkürlich ist.
Das obige ist der detaillierte Inhalt vonKann der ConfigurationManager von .NET nicht assemblybezogene Konfigurationsdateien laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!