В файле machine.config есть элементы, написанные сторонним программным обеспечением, поэтому это выглядит так:
<configuration>
<configSections>
...
</configSections>
...
<Custom>
<Level1> ...
</Level1>
<Level2> ...
</Level2>
<Level3>
<add key="key_text1" value="s1" />
<add key="key_text2" value="s2" />
<add key="key_text3" value="s3" />
</Level3>
</Custom>
</configuration>
Я хочу получить, например. значение ("s2") атрибута "value", где key="key_text2" из узла configuration/Custom/Level3. До сих пор я пытался открыть machine.config как XML и работать оттуда:
Configuration config = ConfigurationManager.OpenMachineConfiguration();
XmlDocument doc = new XmlDocument();
doc.LoadXml(config.FilePath);
однако я получаю XmlException «Данные на корневом уровне недействительны». Я также не знаю, как напрямую использовать методы класса конфигурации, чтобы сделать это. Любые идеи были бы хорошы.