Tengo un gráfico de objetos simple que me gustaría serializar, no he podido encontrar una solución a este problema. Aquí está:¿Cómo obtengo XmlSerializer para no serializar etiquetas de contenedor?
[XmlRoot]
public partial class MyData
{
private List<MyDatum> itemsField;
public MyData()
{
this.anyAttrField = new List<System.Xml.XmlAttribute>();
this.itemsField = new List<MyDatum>();
}
[XmlElement(Type = typeof(MyDatum))]
public List<MyDatum> Items
{
get
{
return this.itemsField;
}
set
{
this.itemsField = value;
}
}
}
Esto produce el siguiente XML:
<MyData>
<Items>
<MyDatum/>
<MyDatum/>
...
</items>
</MyData>
me gustaría quitar la etiqueta de contenedor "elementos" para producir este lugar:
<MyData>
<MyDatum/>
<MyDatum/>
...
</MyData>
tengo intenté todo tipo de soluciones, pero parece que no puedo encontrar una solución.
El artículo es correcto; eso eliminará el elemento contenedor. El 'Type = typeof (...)' es redundante pero inofensivo, por cierto. –
La sintaxis es contraria a la intuición ya que "Artículos" es una colección de "MyDatum" y no un solo objeto "MyDatum". Nunca he adivinado esto como una posible solución en mis experimentos. Supongo que puedes decir "Si no funciona, ve contra tu intuición". –