Я пытаюсь десериализации XML ответ, но я не могу понять, что не работает здесьXML десериализации не работает - есть ошибка в документе XML (0, 0)
Это мои классы (генерируется с помощью инструментов разработчика .NET) ответ
[Serializable]
[XmlType(AnonymousType = true, Namespace = "http://www.crs.lombardia.it/schemas/DCSanita/GSSC/2007-01/calcolaIup/")]
[XmlRoot("GSSC.calcolaIupResponse", Namespace = "http://www.crs.lombardia.it/schemas/DCSanita/GSSC/2007-01/calcolaIup/", IsNullable = false)]
public partial class GSSCcalcolaIupResponse
{
private param1 paramField;
/// <remarks/>
[XmlElementAttribute(Namespace = "")]
public param1 param
{
get
{
return this.paramField;
}
set
{
this.paramField = value;
}
}
}
/// <remarks/>
[XmlType(AnonymousType = true)]
public partial class param1
{
private string iupField;
/// <remarks/>
public string iup
{
get
{
return this.iupField;
}
set
{
this.iupField = value;
}
}
}
XML-как это:
<m:GSSC.calcolaIupResponse xmlns:m="http://www.crs.lombardia.it/schemas/DCSanita/GSSC/2013-01/calcolaIup/">
<param>
<iup>0000W05RNF</iup>
</param>
</m:GSSC.calcolaIupResponse>
А вот код для десериализации.
GSSCcalcolaIupResponse iup = new GSSCcalcolaIupResponse();
XmlSerializer serializer = new XmlSerializer(typeof(GSSCcalcolaIupResponse));
IUPDummyResponse retValue = new IUPDummyResponse();
using (TextReader reader = new StringReader(xml))
{
if (soapFault == null)
iup = (GSSCcalcolaIupResponse)serializer.Deserialize(reader);
}
Вы подтвердили, что 'xml' really * does * содержит текст, который вы указали? Обычно ошибка возникает из-за попытки десериализации пустой строки. –
@JonSkeet Да, он содержит точную строку – zombiechainsaw