.net XmlSerializer要序列化类,我需要公共属性中给定的子标记名
我正在使用XmlSerializer序列化一个类,它有一个对象列表 作为它的一部分。现在发生的是,子标记名从类名中获取名称,但我想要的是它从子类中的公共字段获取名称。请帮助,我应该使用哪个xml属性使其工作 我有以下代码:.net XmlSerializer要序列化类,我需要公共属性中给定的子标记名,.net,xmlserializer,.net,Xmlserializer,我正在使用XmlSerializer序列化一个类,它有一个对象列表 作为它的一部分。现在发生的是,子标记名从类名中获取名称,但我想要的是它从子类中的公共字段获取名称。请帮助,我应该使用哪个xml属性使其工作 我有以下代码: SessionAnalyser sa = new SessionAnalyser(); Circle c = new Circle(); c.Name = "AP";// I want this property as the TAG Name 我得到的XML O/p: &
SessionAnalyser sa = new SessionAnalyser();
Circle c = new Circle();
c.Name = "AP";// I want this property as the TAG Name
我得到的XML O/p:
<SessionAnalyser>
<Circle>
<Name>AP</Name>
...
</Circle>
</SessionAnalyser>
美联社
...
所需的XML O/p:
<SessionAnalyser>
<AP>
...
</AP>
</SessionAnalyser>
...
XmlSerializer
不支持这一点,请注意,因为它无法对其进行反序列化,因为它无法知道.Name
预先映射到
中的AP
要使用XmlSerializer
实现这一点,您必须实现IXmlSerializable
,这需要大量的工作;然而,我怀疑在这一点上使用类似DOM的东西(XElement
)会容易得多
TL;博士版本
对于XmlSerializer
对您没有帮助的场景,不要使用XmlSerializer
XmlSerializer
不支持这一点,请至少注意,因为它无法对其进行反序列化,因为它无法知道.Name
预先映射到AP
要使用XmlSerializer
实现这一点,您必须实现IXmlSerializable
,这需要大量的工作;然而,我怀疑在这一点上使用类似DOM的东西(XElement
)会容易得多
TL;博士版本
对于XmlSerializer
对您没有帮助的场景,不要使用XmlSerializer
AFAIK你可以通过实现自己的成功AFAIK你可以通过实现自己的成功