J'essaie de sérialiser xml en objet, mais après la sérialisation, ma liste d'accords de transport est vide. Je suis sûr que c'est assez facile, mais je ne peux pas trouver mon erreur.Désérialise XML en objet C#
je le code XML suivant
<transport-agreements type="array">
<transport-agreement>
<id type="integer">1047</id>
<description>Standard</description>
<products type="array">
<product>not important</product>
</products>
</transport-agreement>
<transport-agreement>
<id type="integer">1048</id>
<description>Standard</description>
<products type="array">
<product>not important</product>
</products>
</transport-agreement>
</transport-agreements>
Et j'ai le code suivant:
var resultContent = await response.Content.ReadAsStreamAsync();
var serializer = new XmlSerializer(typeof(TransportAgreementRoot));
var transportAgreements = (TransportAgreementRoot)serializer.Deserialize(resultContent);
Et mes cours:
[Serializable, XmlRoot("transport-agreements")]
public class TransportAgreementRoot
{
[XmlArrayItem("transport-agreement")]
TransportAgreement[] TransportAgreements { get; set; }
}
public class TransportAgreement
{
[XmlElement("description")]
public string Description { get; set; }
[XmlElement("id")]
public int Id { get; set; }
[XmlElement("number")]
public string Number { get; set; }
[XmlElement("carrier")]
public Carrier Carrier { get; set; }
[XmlArray("products")]
[XmlArrayItem("product")]
public Product[] Products { get; set; }
}
Avez-vous essayé de changer 'var transportAgreements = (TransportAgreementRoot) serializer.Deserialize (resultContent),' 'à (TransportAgreement []) serializer.Deserialize (resultContent)' –
êtes-vous de sérialisation ou désérialiser ...? –
pls ont regarder ce http://stackoverflow.com/questions/364253/how-to-deserialize-xml-document –