【发布时间】:2015-01-27 16:03:06
【问题描述】:
/我尝试反序列化xml文件时出错:
System.InvalidOperationException: There is an error in XML document (2, 2). ---> <MessageIpBNotifGetInventaire xmlns='http://www.idele.fr/XML/Schema/'> was not expected.
我的 XML 中有问题的部分如下所示:
<ns2:MessageIpBNotifGetInventaire xmlns="http://www.fiea.org/types/" xmlns:ns2="http://www.idele.fr/XML/Schema/">
我的班级是这样定义的:
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.idele.fr/XML/Schema/")]
[System.Xml.Serialization.XmlRootAttribute("MessageIpBNotifGetInventaire", Namespace = "http://www.idele.fr/XML/Schema/", IsNullable = false)]
public partial class MessageIpBNotifGetInventaire {
这是我的反序列化代码
using (MemoryStream inputStream = new MemoryStream(reponseSpecifique.MessageZip))
{
using (ZipFile zipFile = ZipFile.Read(inputStream))
{
zipFile.Save("D:\\Test.zip");
foreach (ZipEntry zipEntry in zipFile)
{
using (MemoryStream outputStream = new MemoryStream())
{
zipEntry.Extract(outputStream);
outputStream.Position = 0;
using (StreamReader sr = new StreamReader(outputStream, Encoding.GetEncoding("UTF-8")))
{
XmlReader reader = XmlReader.Create(outputStream);
XmlSerializer serializer = new XmlSerializer(typeof(MessageIpBNotifGetInventaire));
MessageIpBNotifGetInventaire messageRetour = (MessageIpBNotifGetInventaire)serializer.Deserialize(reader);
}
}
}
}
}
【问题讨论】:
-
你的课程代码在哪里?
标签: c# xml serialization