Heim >Backend-Entwicklung >C++ >Kann der ConfigurationManager von .NET nicht assemblybezogene Konfigurationsdateien laden?

Kann der ConfigurationManager von .NET nicht assemblybezogene Konfigurationsdateien laden?

Linda Hamilton
Linda HamiltonOriginal
2025-01-10 13:07:42198Durchsuche

Can .NET's ConfigurationManager Load Non-Assembly-Related Config Files?

Benutzerdefinierte Konfigurationsdateien in .NET 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:

  1. Erstellen Sie eine Konfigurationsdateizuordnung: Instanziieren Sie ein ExeConfigurationFileMap-Objekt:
<code class="language-csharp">ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();</code>
  1. Geben Sie den benutzerdefinierten Dateipfad an: Legen Sie die Eigenschaft 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>
  1. Öffnen Sie die Konfigurationsdatei: Verwenden Sie ConfigurationManager.OpenMappedExeConfiguration(), um die angegebene Datei zu öffnen:
<code class="language-csharp">Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);</code>
  1. Zugriff auf Konfigurationswerte: Rufen Sie Werte aus Ihrer Konfigurationsdatei mit dem Indexer ab:
<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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn