试图反序列化一些 xml,但我从中检索它的第三方已经以多种方式格式化了特定标签。在下面的示例中,它是值标签。它可以有一个字符串或多个带有更多信息的内部标签
最好我希望这种情况自动发生并继续遵循这种代码结构
[XmlRoot(ElementName = "ContactField")]
public class ContactField
{
[XmlElement("id")]
public int id { get; set; }
[XmlElement("type")]
public string type { get; set; }
[XmlElement("value")]
public FieldValue values { get; set; }
}
有什么方法可以使用 XmlSerializer 根据其内容以不同方式处理标签,还是我会被困在手动操作中?
<contact>
<isConnection>false</isConnection>
<id>62</id>
<fields>
<id>8</id>
<type>id</type>
<value>test@test.com</value>
<editedBy>OWNER</editedBy>
</fields>
<fields>
<id>95</id>
<type>notes</type>
<value>Dummy user for testing</value>
<editedBy>OWNER</editedBy>
</fields>
<fields>
<id>96</id>
<type>birthday</type>
<value>
<day>11</day>
<month>5</month>
<year>1988</year>
</value>
<editedBy>OWNER</editedBy>
</fields>
</contact>