我嘗試反序列化XML文件:C#反序列化XML文件
<?xml version="1.0" encoding="utf-8"?>
<XmlFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<OBJECTS ITEM="ItemValue" TABLE_NAME="TableExample">
</OBJECTS>
</XmlFile>
我反序列化類的代碼看起來像這樣:
[Serializable]
[XmlRoot("XmlFile")]
public class SerializeObject
{
[XmlAttribute("ITEM")]
public string Item { get; set; }
[XmlAttribute("TABLE_NAME")]
public string Table_Name { get; set; }
}
當我嘗試反序列化的XML文件,我總是得到任何錯誤,項目和Table_Name等於null。爲什麼?
THX重播
更多代碼將是有用的。我猜看提供的信息是:你沒有指定「OBJECTS」元素。您的類定義了「XmlFile/@ ITEM」和「XmlFile/@ TABLE_NAME」,而XML之間有一個「OBJECTS」元素。 –
我看到使用「Serializable」屬性(用於RunTime序列化程序)以及使用用於XmlSerializer的「XmlRoot/XmlAttribute」屬性。你在使用哪一個? –