我想要以下格式的 XML:
<configuration><!-- Only one configuration node -->
<logging>...</logging><!-- Only one logging node -->
<credentials>...</credentials><!-- One or more credentials nodes -->
<credentials>...</credentials>
</configuration>
我正在尝试创建一个类Configuration
具有[Serializable]
属性。为了序列化凭证节点,我有以下内容:
[XmlArray("configuration")]
[XmlArrayItem("credentials", typeof(CredentialsSection))]
public List<CredentialsSection> Credentials { get; set; }
但是,当我将其序列化为 XML 时,XML 的格式如下:
<configuration>
<logging>...</logging>
<configuration><!-- Don't want credentials nodes nested in a second
configuration node -->
<credentials>...</credentials>
<credentials>...</credentials>
</configuration>
</configuration>
如果我删除[XmlArray("configuration")]
行,我得到以下信息:
<configuration>
<logging>...</logging>
<Credentials><!-- Don't want credentials nodes nested in Credentials node -->
<credentials>...</credentials>
<credentials>...</credentials>
</Credentials>
</configuration>
我怎样才能以我想要的方式序列化这个,有多个<credentials>
单个根节点内的节点<configuration>
?我想做到这一点而无需实施IXmlSerializable
并进行自定义序列化。我的班级是这样描述的:
[Serializable]
[XmlRoot("configuration")]
public class Configuration : IEquatable<Configuration>