2
预期XML输出:XmlSerializer的 - 同一元素具有不同属性的
<add>
<doc>
<field name="id">1</field>
<field name="Myname">MyName1</field1>
</doc>
<doc>
<field name="id">2</field>
<field name="Myname">MyName2</field>
</doc>
<doc>
<field name="id">3</field>
<field name="Myname">MyName3</field>
</doc>
</add>
要得到上面的XML文档,我设计了以下类
public class doc
{
[XmlElement("field")]
public ID Id
{
get;
set;
}
[XmlElement("field2")]
public Name Myname
{
get;
set;
}
}
名称类将是
public class Name
{
[XmlText]
public string Namevalue
{
get;
set;
}
[XmlAttribute("name")]
public string Myname
{
get;
set;
}
}
XmlSerializer代码:
XmlSerializer serializer = new XmlSerializer(typeof(List<doc>), new XmlRootAttribute("add"));
这给我下面的输出
<add>
<doc>
<field name="id">1</field>
<field2 name="Myname">MyName1</field2>
</doc>
<doc>
<field name="id">2</field>
<field2 name="Myname">MyName2</field2>
</doc>
<doc>
<field name="id">3</field>
<field2 name="Myname">MyName3</field2>
</doc>
</add>
这里场2应该场我知道自己需要改变文档类场2为场但是这会导致错误。
我应该如何设计我的班级以获得预期的输出?
编辑: ID级别也会像名称类都有自己的属性
什么是'ID'类? – 2010-12-14 11:12:27
@Saeed pl看看编辑 – 2010-12-14 11:14:15
有趣的问题。我需要此信息来格式化XML数据以与DHTMLX网格一起使用。 – 2011-03-30 19:02:43