我想要以下格式的 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>