2013-06-24 27 views
5

Aşağıdaki sınıfları tanımladım.Serileştirme Listesi <> XmlSerializer ile

<DocumentOrder Name="myname"> 
    <Documents> 
    <Document Status="new"/> 
    // ... 
    </Documents> 
</DocumentOrder> 

Ama istiyorum: Bir XML bu seri hale yaparken

Document.cs

public class Document { 
    // ... 
    [XmlAttribute] 
    public string Status { get; set; } 
} 

DocumentOrder.cs

public class DocumentOrder { 
    // ... 
    [XmlAttribute] 
    public string Name { get; set; } 
    public List<Document> Documents { get; set; } 
} 

alıyorum öyle, yani Document öğelerinin DocumentOrder öğesinin çocukları olması.

<DocumentOrder Name="myname"> 
    <Document Status="new"/> 
    <Document Status="new"/> 
    <Document Status="new"/> 
    // The document element has other attributes to distinguish... 
</DocumentOrder> 

Bunu nasıl yapabilirim?

+0

bkz vardır [bu] (http://stackoverflow.com/questions/3303165/xmlarrayitem-öznitelik-xmlarray-on-serializable-c-sharp-class kullanmadan) –

cevap

4

deneyebileceğiniz:

public class DocumentOrder { 
    // ... 
    [XmlAttribute] 
    public string Name { get; set; } 
    [XmlElement("Document")] 
    public List<Document> Documents { get; set; } 
} 
+1

+1 bana cevap ver bana :) –