我有以下XML ...反序列化數組元素列出
<configuration>
<img name="name1" />
<img name="name2" />
<warn>
<img name="warn1" />
</warn>
</configuration>
...我嘗試反序列化到...
[XmlType("img")]
public class ImageNameExceptionItemXml
{
[XmlAttribute("name")]
public string Filename;
}
[XmlRoot("configuration")]
public class ImageNameExceptionListXml: List<ImageNameExceptionItemXml>
{
[XmlArray("warn")]
[XmlArrayItem("img")]
public ImageNameExceptionListXml WarnList { get; set; }
}
...但我結束了WarnList屬性爲null。
我已經嘗試過...
[XmlElement("warn"}]
public ImageNameExceptionListXml WarnList { get; set; }
......或者......
[XmlElement("warn"}]
public List<ImageNameExceptionItemXml> WarnList { get; set; }
...但我還是最終與WarnList財產空。這是爲什麼?
架構看起來並不好。是否有可能改變? – findcaiyzh 2012-02-16 11:43:14
不確定,但我不認爲序列化器喜歡反序列化它認爲是數組的額外屬性。所以這可能會很棘手,如果沒有明確地實現IXmlSerializable。 – Balthy 2012-02-16 11:51:03
@findcaiyzh我只能更改''節點。也許我可以嘗試 <結構>
配置> –
sjlewis
2012-02-16 11:55:09