如何定义 C# 类以反序列化特定的 XML 表达式
本文关键字:反序列化 表达式 XML 何定义 定义 | 更新日期: 2023-09-27 17:56:44
我的序列化/反序列化工作正常,但我想稍微更改一下 xml 文件以使其更具人类可读性。我现在拥有的是:
<Options>
<Option>
<Key>Backup</Key>
<RegEx>.exe%</RegEx>
</Option>
</Options>
我想这样写:
<Options>
<Option key="Backup" regex=".exe%" />
</Options>
[Serializable]
public class Option
{
//[XmlElement("key")]
public EOptions Key;
//[XmlElement("regex")]
public string RegEx;
public override string ToString()
{
return Key.ToString();
}
}
...
public List<Option> Options;
我用谷歌搜索了一个小时并尝试了很多,但没有任何效果。
将XmlElement
替换为 XmlAttribute
。
[Serializable]
public class Option
{
[XmlAttribute("key")]
public EOptions Key;
[XmlAttribute("regex")]
public string RegEx;
public override string ToString()
{
return Key.ToString();
}
}
您使用XmlAttributeAttribute
类而不是XmlElementAttribute
。
[Serializable]
public class Option
{
[XmlAttribute("key")]
public EOptions Key;
[XmlAttribute("regex")]
public string RegEx;
public override string ToString()
{
return Key.ToString();
}
}