Si spera che una domanda con una risposta molto semplice, ma non è uno che sono stato in grado di trovare. Ho un documento XML piccola che assomiglia più o meno in questo modo:In C# come posso deserializzare un documento XML contenente un elenco di elementi senza un elemento di elenco circostante
<aa>
<bb><name>bb1</name></bb>
<bb><name>bb2</name></bb>
<bb><name>bb3</name></bb>
</aa>
ho classi che rappresentano AA e BB
[XmlRoot("aa")]
public class aa
{
[XmlArray("bbs")]
[XmlArrayItem("bb")]
public bb[] bbs;
}
public class bb
{
[XmlElement("name")]
public string Name;
}
Quando provo a deserializzare il documento utilizzando un XmlSerializer ottengo un oggetto aa con una proprietà null bbs. se ho capito bene questo è perché gli attributi che ho usato sulla proprietà bbs dicono al serializzatore di aspettarsi un documento come questo:
<aa>
<bbs>
<bb><name>bb1</name></bb>
<bb><name>bb2</name></bb>
<bb><name>bb3</name></bb>
</bbs>
</aa>
Dato che non posso cambiare il formato del file XML che sto ricevendo, è c'è un modo per dire a XmlSerialiser di aspettarsi una matrice che non è racchiusa in un altro tag?
Perfetto, grazie – Dan