Lesen der Schlüsselwerte des benutzerdefinierten Konfigurationsabschnitts in C #
Ich muss Schlüsselwerte aus benutzerdefinierten Abschnitten in app / web.config lesen.
Ich ging durch
Lesen eines Schlüssels aus der Web.Config mit ConfigurationManager
und
Sie geben jedoch nicht an, wie ein benutzerdefinierter Abschnitt gelesen werden soll, wenn der Pfad zur Konfigurationsdatei explizit angegeben werden muss (in meinem Fall befindet sich die Konfigurationsdatei nicht am Standardspeicherort).
Beispiel meiner web.config-Datei:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<MyCustomTag>
<add key="key1" value="value1" />
<add key="key2" value="value2" />
</MyCustomTag>
<system.web>
<compilation related data />
</system.web>
</configuration>
in dem ich Schlüsselwertpaare innerhalb MyCustomTag lesen muss.
Wenn ich es versuche (configFilePath ist der Pfad zu meiner Konfigurationsdatei): -
var configFileMap = new ExeConfigurationFileMap { ExeConfigFilename = configFilePath };
var config =
ConfigurationManager.OpenMappedExeConfiguration(
configFileMap, ConfigurationUserLevel.None);
ConfigurationSection section = config.GetSection(sectionName);
return section[keyName].Value;
Ich erhalte die Fehlermeldung "Zugriff auf geschützten internen Indexer" this "hier nicht möglich" in Abschnitt [keyName]