Ich versuche, XML zu Objekt zu serialisieren, aber nach der Serialisierung ist meine Liste der Transportvereinbarungen leer. Ich bin mir ziemlich sicher, dass das ziemlich einfach ist, aber ich kann meinen Fehler nicht finden.Deserialize XML zum Objekt C#
Ich habe folgende xml
<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>
Und ich habe den folgenden Code:
var resultContent = await response.Content.ReadAsStreamAsync();
var serializer = new XmlSerializer(typeof(TransportAgreementRoot));
var transportAgreements = (TransportAgreementRoot)serializer.Deserialize(resultContent);
Und meine Klassen:
[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; }
}
Haben Sie versucht, zu ändern 'var transportAgreements = (TransportAgreementRoot) serializer.Deserialize (resultContent);' auf '(TransportAgreement []) serializer.Deserialize (resultContent)' –
versuchen Sie zu serialisiert oder deserialisieren ...? –
pls haben diese http://stackoverflow.com/questions/364253/how-to-deserialize-xml-document –