C#

XmlSerialization di una List in C#

Friday, February 3rd, 2012 | C# | No Comments

Probabilmente è un qualcosa che dovrebbe venire spontaneo, sopratutto quando si utilizza un framework, il .NET, da parecchio tempo, ma ogni volta mi blocco e devo andare a cercare la soluzione a questo problema: impostare in che modo il Serializer debba trasformare un oggetto. In particolare, mi trovo nella situazione di dover serializzare un oggetto che al suo interno ha:

C#
1
public List<int> identifiers { get; set; }

Lasciando tutto in mano a .NET, l’xml assume questa forma:

XHTML
1
2
3
4
<identifiers>
<int>15</int>
<int>21</int>
</identifiers>

dove i valori 15 e 21 sono puramente d’esempio. Ma, siccome sono un perfezionista, quel tag int all’interno dell’xml mi sta alquanto antipatico, quindi:

C#
1
2
[XmlArrayItem("id")]
public List<int> identifiers { get; set; }

Questa piccola aggiunta mi permette di impostare il nome che assumerà il tag all’interno della lista, ottenendo:

XHTML
1
2
3
4
<identifiers>
<id>15</id>
<id>21</id>
</identifiers>

Ora spero di ricordare, ogni volta che ne avrò bisogno, di aver postato qui la soluzione.
:)

PS: un nuovo post dopo anni! Mi riprometto di far in modo che non sia l’unico.

Tags: ,