我开始研究 XML(反)序列化,并且正在努力反序列化以下 XML
<?xml version="1.0" encoding="utf-8" ?>
<Reader>
<NewRecord value ="HH"/>
<FileTerminator value ="HHProgram"/>
<OutputFont value ="Courier"/>
</Reader>
进入下面的类
public class Reader
{
[XmlElement]
public string NewRecord;
[XmlElement]
public string FileTerminator;
[XmlElement]
public string OutputFont;
}
我在引用每个元素的正确值属性时遇到问题,其中以下 XML 按预期工作。
<?xml version="1.0" encoding="utf-8" ?>
<LayoutReader>
<NewRecord>HH</NewRecord>
<FileTerminator>HHProgram</FileTerminator>
<OutputFont>Courier</OutputFont>
</LayoutReader>
最佳答案
尝试使用此代码,它会按您的预期工作。您也可以以同样的方式添加其他属性
public class Reader
{
...
[XmlElement("OutputFont")]
public ReaderItemOutputFont ReaderItem { get; set; }
}
[Serializable()]
public class ReaderItemOutputFont
{
[XmlAttribute("value")]
public String OutputFont { get; set; }
}
关于c# - 从不同元素反序列化具有相同名称的 xml 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35577989/