2009-06-27 23 views

Respuesta

66

XmlArray se usa para decirle al xmlserializer que trate la propiedad como una matriz y la serialice de acuerdo con sus parámetros para los nombres de los elementos.

[XmlArray("FullNames")] 
[XmlArrayItem("Name")] 
public string[] Names{get;set;} 

le dará

<FullNames> 
    <Name>Michael Jackson</Name> 
    <Name>Paris Hilton</Name> 
</FullNames> 

Con el fin de añadir un atributo xml para FullNames elemento, es necesario declarar una clase para ello.

[XmlType("FullNames")] 
public class Names 
{ 
    [XmlAttribute("total")] 
    public int Total {get;set;} 
    [XmlElement("Name")] 
    public string[] Names{get;set;} 
} 

esto le dará

<FullNames total="2"> 
    <Name>Michael Jackson</Name> 
    <Name>Paris Hilton</Name> 
</FullNames> 
+0

sí, lo saben .. Puede ser que no explicar adecuadamente .. me deja explicar con su ejemplo Michael Jackson Paris Hilton Ver el atributo "total" para el elemento ArrayOfString .. ¿Cómo obtengo esto? – 123Developer

+0

tendría [XmlAttribute ("total")] public int Total {get {return Names.Length;} set {}} o similar; tenga en cuenta el colocador "no hacer nada". –

+0

(... utilizando el mismo enfoque que codemeit ya ha demostrado que lo declara) –

Cuestiones relacionadas