我尝试反序列化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”属性。你在使用哪一个? –