2010-01-12 117 views
3

在C#xml可串行化類中如何實現?Xml序列化父元素具有其他元素的列表序列化

<Category Attrib1="Value1" Attrib2="Value2"> 
    <Item>Item1</Item> 
    <Item>Item2</Item> 
    <Item>Item3</Item> 
    <Item>Item4</Item> 
</Category> 

List<Item>導致兩個類別屬性繼承由分類的XML串行化器被忽略。如果類別由List<Item>屬性組成,則會在所有項目的周圍添加父元素(例如,Category \ Items \ Item)。兩者都是不可取的。 Xml必須看起來像上面的例子。

回答

3

試試這個:

public class Category 
{  
    [XmlAttribute] 
    public string Attrib1 { get; set; } 

    [XmlAttribute] 
    public string Attrib2 { get; set; }  

    [XmlElement("Item")] 
    public List<string> Items { get; set; } 
} 

測試,工作正常。

+0

就是這樣。謝謝! – Rich 2010-01-12 15:53:29