лучший способ хранить информацию в виде дерева в app.config

StackOverflow https://stackoverflow.com/questions/658204

Вопрос

Как лучше всего хранить дерево, подобное приведенному ниже, в app.config и как мне десериализовать эту информацию из него?

Tree
|-node1-
|       |-name - value
|       |-name - value
|       | ......
|-node2-
|       |-name - value
|       |-name - value
|       | ......
|-node3-
|       |-name - value
|       |-name - value
|       | ......

Я могу преобразовать это дерево в xml, если это поможет.

Спасибо за любую помощь заранее.

Это было полезно?

Решение

Используйте пользовательский раздел конфигурации. Один из способов сделать это см. В конструкторе разделов конфигурации . Вы можете сделать это вручную, но вы можете поиграть с CSD и посмотреть код, который он генерирует.

Другие советы

Вы можете расширить .config своими собственными типами. Это могут быть элементы, содержащие другие элементы и атрибуты. Эта область, похоже, плохо документирована, но есть примеры.

Начните с класса System.Configuration.ConfigurationElement.

Вы можете использовать документ на основе xml внутри своего приложения с расширением .config (например, NLog.config, ...) и использовать пользовательский поставщик данных для чтения данных XML и преобразования их в древовидные ds.

<Nodes>
    <Node Name="Node1" Value="Value1">
       <Node Name="Node1.1" Value="Value1.2">
       </Node>

       <Node Name="Node1.2" Value="Value1.2">
       </Node>
    </Node>

    <Node Name="Node2" Value="Value2">
    </Node>
</Nodes>

или вы можете использовать пользовательский раздел конфигурации

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top