2011-09-29 34 views
1

我有XML與幾個項目,例如:XmlSerializer的和不同領域的類和XML屬性

<TestObject> 
    <TestElement1/> 
    <TestElement2/> 
</TestObject> 
<TestObject> 
    <TestElement1/> 
    <TestElement2/> 
</TestObject> 

我也有類:

class TestClass { 
    public int TestElement1 { get; set; } 
    public int Element { get; set; } 
} 

如果我做的:

XmlSerializer s = new XmlSerializer(typeof(List<TestClass>)); 
List<TestClass> list = (List<TestClass>)s.Deserialize("myXml.xml"); 

之後我用對象TestClass得到列表,但屬性Element沒有設置。如果我想在元素字段中設置TestElement2,我該如何更改序列化?

回答

4

你需要有[XmlElement]屬性來裝點Element屬性:

[XmlRoot("TestObject")] 
class TestClass { 
    public int TestElement1 { get; set; } 

    [XmlElement("TestElement2")] 
    public int Element { get; set; } 
}