C#
XmlSerialization di una List in C#
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:
|
1 |
public List<int> identifiers { get; set; } |
Lasciando tutto in mano a .NET, l’xml assume questa forma:
|
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:
|
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:
|
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.