首页 > 编程语言 >C# 反序列化报错 XML 文档(1, 2)中有错误:不应有 <xml xmlns=''>

C# 反序列化报错 XML 文档(1, 2)中有错误:不应有 <xml xmlns=''>

时间:2023-08-01 09:55:05浏览次数:53  
标签:XML xml set string get 报错 序列化 public

1.XmlSerializer
症状

用XmlSerializer进行xml反序列化的时候,程序报错:

​不应有 <xml xmlns=''>。​
​说明: ​执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

 

​异常详细信息: ​System.InvalidOperationException: 不应有 <xml xmlns=''>。

我的xml如下:

<xml>
<ToUserName><![CDATA[gh_1874139df55e]]></ToUserName>
<FromUserName><![CDATA[ov4latyc1pi0_Ics0uHY6QTLRDg8]]></FromUserName>
<CreateTime>1388056811</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[哈哈]]></Content>
<MsgId>5961658608245054071</MsgId>
</xml>


要反序列化的对象类型:

public class WXP_Message
{
public int MessageId { get; set; }

public string ToUserName { get; set; }

public string FromUserName { get; set; }

public DateTime CreateTime { get; set; }

public string MsgType { get; set; }

public string Event { get; set; }

public string Content { get; set; }

public string PicUrl { get; set; }

public string Format { get; set; }

public string Location_X { get; set; }

public string Location_Y { get; set; }

public string Scale { get; set; }

public string Label { get; set; }

public string Title { get; set; }

public string Description { get; set; }

public string Url { get; set; }

public int MsgId { get; set; }

public int MediaId { get; set; }

public int ThumbMediaId { get; set; }

public bool IsReplied { get; set; }

public string ReplyContent { get; set; }

public DateTime ReplyTime { get; set; }

public bool IsGiftVoucher { get; set; }

public int IntTime { get; set; }

}

诊断

这个错误一般都是xml不能反序列化为目标对象类型造成的,我的这个原因是因为:xml的根节点(xml)和对象名(wxp_message)不一样导致的不能反序列化。

解决

修改xml根节点和对象类名一样就可以了

<WXP_Message>
<ToUserName><![CDATA[gh_1874139df55e]]></ToUserName>
<FromUserName><![CDATA[ov4latyc1pi0_Ics0uHY6QTLRDg8]]></FromUserName>
<CreateTime>1388056811</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[哈哈]]></Content>
<MsgId>5961658608245054071</MsgId>
</WXP_Message>


参考链接:

 http://www.hierror.com/csharp/201397505.shtml 
-----------------------------------
©著作权归作者所有:来自51CTO博客作者rainbow70626的原创作品,请联系作者获取转载授权,否则将追究法律责任
XML 文档(1, 2)中有错误:不应有 &lt;xml xmlns=''&gt;
https://blog.51cto.com/u_6725876/5170297

 

要检查 XmlSerializer mySerializer = new XmlSerializer(destType, new XmlRootAttribute("jdma_epx"));  XmlRootAttribute里面的类型与xml的根类型是否一致

标签:XML,xml,set,string,get,报错,序列化,public
From: https://www.cnblogs.com/wuguoqiang/p/17595660.html

相关文章

  • error while loading shared libraries: libxml2.so.2: cannot open shared object fi
    参考:https://blog.csdn.net/qq_39779233/article/details/128215517  ============================================   errorwhileloadingsharedlibraries:libxml2.so.2:cannotopensharedobjectfile解决方法  解决方法:sudoapt-getinstalllibxml......
  • Maven配置中pom.xml和setting.xml之间的关系
    在日常的开发中,我们拿IDEA举例,一般会在电脑上自行下载安装Maven,然后在IDEA中配置我们安装的Maven路径,通过修改setting.xml文件,例如配置公共的镜像仓库地址,来提高依赖下载速率;或者配置内部私有的镜像仓库地址,来引入一些私有的依赖等等。1、如何从指定的镜像仓库下载依赖如下图在......
  • Mybatis学习(1)——mybatis介绍 & 入门案例 & 全局配置文件详解 & 增删改查 + mybatis事
    Mybatis学习(1)——mybatis介绍&入门案例&全局配置文件详解&增删改查+mybatis事务&mapper.xml文件#{}和${}&动态SQL入门原文链接:https://blog.csdn.net/Pireley/article/details/131520252目录引出一、mybatis是啥1.官网&ORM(ObjectRelationMapping)对象关......
  • Mybatis中的Mapper.xml映射文件sql查询接收多个参数 分页查询 sql语句动态生成的时候,
    Mybatis中的Mapper.xml映射文件sql查询接收多个参数分页查询sql语句动态生成的时候,使用${},sql语句中某个参数进行占位的时候用#{}原文链接:https://blog.csdn.net/Ep_Little_prince/article/details/100687848​我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQ......
  • Mapper.xml详解 一对一 多对一 多对多
    Mapper.xml详解Mapper.xml详解一对一多对一多对多原文链接:https://blog.csdn.net/qq_36850813/article/details/80037363 我们知道,每一款框架产品在实际开发中,都是通过XML文件来培训框架的相关流程的,MyBatis也不例外,主要有两个配置文件:config.xml和Mapper.xml,当然,这两种配......
  • ES保存数据时报错:Bulk indexing has failures
    ElasticSearch保存时报错问题解决:错误信息org.springframework.data.elasticsearch.ElasticsearchException:Bulkindexinghasfailures.UseElasticsearchException.getFailedDocuments()fordetailedmessages解决:我这边是因为磁盘空间不足了,ES在分片分配时,默认不......
  • elementUI 日期控件报错 TypeError: dateObject.getTime is not a function
    <el-form-itemlabel="日期"prop="date"><el-time-pickerv-model="form.date"type="date"placeholder="选择时间"style="width:100%;"></el-time-picker></el-form-item>date:[......
  • C# 获取XML文件内容的多种方式
    C#获取XML文件内容的多种方式首先设定有一个xml文件Configs.xml,其内容如下:<?xmlversion="1.0"encoding="utf-8"?><Config><Devicename="aaa"><Typename="a01"func="1"></Type><Typename=&quo......
  • Apache Shrio反序列化漏洞
    ApacheShiro是一个流行的Java安全框架,然而,它存在一个反序列化漏洞,即CVE-2017-5638。该漏洞允许攻击者通过构造恶意序列化数据,利用Shiro的序列化功能来执行任意代码,从而攻击Java应用程序的安全边界。 以下是ApacheShrio反序列化漏洞的介绍及复现过程:漏洞介绍CVE-2017-5638......
  • 关于Makefile出现E325: ATTENTION报错
    前言对于新手使用Makefile,有时候使用vi命令打开Makefile会出现E325:ATTENTION报错,而只要出现了一次,之后每次使用vi命令打开相同的Makefile都会出现这个报错。原因目前我发现出现这种bug的原因有两个,还有其他可能触发这种问题的可以在评论区留言。原因一编辑文件......