如何在XML配置类中打开或关闭属性
本文关键字:属性 XML 配置 | 更新日期: 2023-09-27 18:03:19
我的XML配置文件的一部分是这样的
<Formatting Mode="Format1">
<FormatterSettings Range="Range1" Restriction="None" Padding="0" />
</Formatting>
<Formatting Mode="Format2">
<FormatterSettings Range="Range3" Restriction="None" Padding="0" />
</Formatting>
我的类是这样的
public class Formatting
{
[XmlAttribute("Mode")]
public FormatterType Mode { get; set; }
public FormatterSettings FormatSettings { get; set; }
}
public class FormatterSettings
{
[XmlAttribute("Range")]
public CharacterRange CharRange { get; set; }
[XmlAttribute("Restriction")]
public CharacterRangeRestriction RestrictRange { get; set; }
[XmlAttribute("Padding")]
public int Padding { get; set; }
}
但是我有一个特殊的格式化器只有一个设置所以我需要XML看起来像
<Formatting Mode="DateFormatter">
<FormatterSettings DateFormat="yyyyMMdd" />
</Formatting>
在这种特殊情况下,我的类将是,没有其他设置,但我只想要一个类,如果可能的话。
public class FormatterSettings
{
[XmlAttribute("DateFormat")]
public string DateFormat{ get; set; }
}
我该怎么做?
public class FormatterSettings
{
[XmlAttribute("Range")]
public CharacterRange CharRange { get; set; }
[XmlAttribute("Restriction")]
public CharacterRangeRestriction RestrictRange { get; set; }
[XmlAttribute("Padding")]
public int Padding { get; set; }
[XmlAttribute("DateFormat")]
public string DateFormat{ get; set; }
}