ConfigurationManager XML元素支持数组吗



我正在使用Configuration Manager将设置存储在C#应用程序中。我有一些单独的设置,我有一个可变的设置数组。

XML配置看起来像这样:

<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
</startup>
<appSettings>
<add key="Option" value="Tabbed" />
<add key="Version" value="0.0.0.0" />
<Tee1>
<add key="Name" value="Test1" />
<add key="IPAddress" value="127.0.0.1" />
<add key="Port" value="58323" />
<add key="AutoConnect" value="True" />
<add key="Link" value="False" />
<add key="Link" value="False" />
</Tee1>
<Tee2>
<add key="Name" value="Test2" />
<add key="IPAddress" value="127.0.0.1" />
<add key="Port" value="58324" />
<add key="AutoConnect" value="True" />
<add key="Link" value="False" />
<add key="Link" value="False" />
</Tee2>
<Tee3>
<add key="Name" value="Test3" />
<add key="IPAddress" value="localhost" />
<add key="Port" value="58325" />
<add key="AutoConnect" value="False" />
<add key="Link" value="True" />
<add key="Link" value="False" />
</Tee3>
<Tee4 />
<Tee5 />
<Tee6 />
<Tee7 />
<Tee8 />
<Tee9 />
<Tee10>
<add key="Name" value="Test10" />
<add key="IPAddress" value="127.0.0.1" />
<add key="Port" value="58332" />
<add key="AutoConnect" value="False" />
<add key="Link" value="False" />
<add key="Link" value="False" />
</Tee10>
</appSettings>
</configuration>

没有数据的三通条目为空项。

当我将生成的XML文本加载到Visual Studio 2010编辑器中时,它显示TEE1有一个错误。

"元素‘appSettings’有一个无效的子元素‘Tee1’。可能的元素列表应为:‘add,remove.Clear’。">

我应该如何表示类似项目的数组?

您只能在<appSettings>中存储key=value设置。如果您想要更丰富的内容,则需要编写一个自定义配置节处理程序。

参见,例如:

  • 如何:使用ConfigurationSection创建自定义配置节
  • 3个简单步骤中的自定义配置部分
  • .NET自定义配置节、集合和元素

最新更新