XML反序列化出错,XML 文档(2, 2)中有错误
XML转换为实体类的错误处理方案
一.错误描述:
- XML反序列化出错,XML 文档(2, 2)中有错误
 
二.解决方案:
- 在实体类的字段要加上XmlElement属性
 
三.具体实现:
1.XML文档
	<EVENT_INSTANCE>
  	<EventType>ALTER_TABLE</EventType>
 	<PostTime>2015-08-04T10:21:14.670</PostTime>
  	<SPID>175</SPID>
  	<ServerName>E6SER14</ServerName>
  	<LoginName>sa</LoginName>
  	<UserName>dbo</UserName>
  	<DatabaseName>E6ETms</DatabaseName>
  	<SchemaName>ETms</SchemaName>
  	<ObjectName>Driver</ObjectName>
  	<ObjectType>TABLE</ObjectType>
  	<AlterTableActionList>
	    <Drop>
	      <Constraints>
	        <Name>DF_Driver_DriverID</Name>
	      </Constraints>
	    </Drop>
	</AlterTableActionList>
  	<TSQLCommand>
	    <SetOptions ANSI_NULLS="ON" ANSI_NULL_DEFAULT="ON" ANSI_PADDING="ON" QUOTED_IDENTIFIER="ON" ENCRYPTED="FALSE" />
	    <CommandText>ALTER TABLE ETms.Driver
	    DROP CONSTRAINT DF_Driver_DriverID
		</CommandText>
  	</TSQLCommand>
</EVENT_INSTANCE>
2.目标实体对象
[XmlRoot(ElementName = "EVENT_INSTANCE")]
[Serializable]
public class EventModel
{
    [XmlElement(ElementName = "EventType")]
    public string EventType { set; get; }
    [XmlElement(ElementName = "PostTime")]
    public string PostTime { set; get; }
    [XmlElement(ElementName = "SPID")]
    public string Spid { set; get; }
    [XmlElement(ElementName = "ServerName")]
    public string ServerName { set; get; }
    [XmlElement(ElementName = "UserName")]
    public string UserName { set; get; }
    [XmlElement(ElementName = "DatabaseName")]
    public string DatabaseName { set; get; }
    [XmlElement(ElementName = "SchemaName")]
    public string SchemaName { set; get; }
    [XmlElement(ElementName = "ObjectName")]
    public string ObjectName { set; get; }
    [XmlElement(ElementName = "ObjectType")]
    public string ObjectType { set; get; }
    [XmlElement(ElementName = "TargetObjectName")]
    public string TargetObjectName { set; get; }
    [XmlElement(ElementName = "TargetObjectType")]
    public string TargetObjectType { set; get; }
    [XmlElement(ElementName = "PropertyName")]
    public string PropertyName { set; get; }
    [XmlElement(ElementName = "PropertyValue")]
    public string PropertyValue { set; get; }
    [XmlElement(ElementName = "Parameters")]
    public Parameters Parameters { get; set; }
    [XmlElement(ElementName = "TSQLCommand")]
    public TsqlCommand TsqlCommand { get; set; }
}
public class TsqlCommand
{
[XmlElement(ElementName = "CommandText")]
public string CommandText { set; get; }
[XmlElement(ElementName = "SetOptions")]
public string SetOptions { set; get; }
}
public class Parameters
{
[XmlElement("Param")]
public List<string> ParamContent { get; set; }
}
3.XML转实体类测试
//xmlStr 是xml字符串   ;type是要转换目标实体的类型 【typeof (EventModel)】;
public static object DeserializeFromXml(string xmlStr, Type type)
{
    try
    {
        using (StringReader sr = new StringReader(xmlStr))
        {
            XmlSerializer xs = new XmlSerializer(type);
            return xs.Deserialize(sr);
        }
    }
    catch (Exception ex)
    {
        throw (ex);
    }
}
												
											XML反序列化出错,XML 文档(2, 2)中有错误的更多相关文章
- 关于"XML 文档(2, 2)中有错误:不应有 <xml xmlns=''>"错误
		
XML文件名 <?xml version="1.0" encoding="utf-8"?> <Config xmlns:xsi="h ...
 - c# Net   XML文档(2,2)中有错误
		
错误如图所示: xml转实体,需求很简单,度娘找了几个方法试了下,转换代码仔细看了看 没毛病啊 但是 就是提示 XML文档(2,2)中有错误,百度搜索了一大会 没解决方案,仔细分析了一下, 最后发现 ...
 - XML 文档(1, 2)中有错误:不应有 <xml xmlns=''>
		
症状 用XmlSerializer进行xml反序列化的时候,程序报错: 不应有 <xml xmlns=''>. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息, ...
 - C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”
		
Q: 在反序列化 Xml 字符串为 Xml 对象时,抛出如下异常. 即在 XML文档(0, 0)中有一个错误:缺少根元素. A: 首先看下代码: StringBuilder sb = new Stri ...
 - Oracle 远程访问配置    在 Windows Forms 和 WPF 应用中使用 FontAwesome 图标    C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”   C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper    Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作
		
Oracle 远程访问配置 服务端配置 如果不想自己写,可以通过 Net Manager 来配置. 以下配置文件中的 localhost 改为 ip 地址,否则,远程不能访问. 1.网络监听配置 ...
 - xml和xsd架构文档相关知识
		
1.使用架构(XSD)验证XML文件 2.使用自动生成工具: 工具目录:C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4. ...
 - poi 读取使用 Strict Open XML 保存的 excel 文档
		
poi 读取使用 Strict Open XML 保存的 excel 文档 某项目有一个功能需要读取 excel 报表内容,使用poi读取时报错: 具体错误为: org.apache.poi.POIX ...
 - Mongodb:修改文档结构后出现错误:Element '***' does not match any field or property of class ***.
		
Mongodb:修改文档结构后出现错误:Element '***' does not match any field or property of class ***. Mongodb是一种面向文档的 ...
 - WebAPI使用多个xml文件生成帮助文档
		
一.前言 上篇有提到在WebAPI项目内,通过在Nuget里安装(Microsoft.AspNet.WebApi.HelpPage)可以根据注释生成帮助文档,查看代码实现会发现是基于解析项目生成的xm ...
 
随机推荐
- Maven的阿里云镜像
			
打开“Maven安装目录/conf/settings.xml”文件,找到<mirrors>节点,添加: <mirror> <id>nexus-aliyun</ ...
 - 【Unity】UGUI系列教程——拼接一个简单界面
			
0.简介: 在目前的游戏市场上,手游依然是市场上的主力军,而只有快速上线,玩法系统完善的游戏才能在国内市场中占据份额.而在手游开发过程中,搭建UI系统是非常基本且重要的技能,极端的说如果对Unity的 ...
 - jQuery---ajax---error函数及其参数详解
			
使用jquery的ajax方法向服务器发送请求的时候,常常需要使用到error函数进行错误信息的处理,本文详细说明了ajax中error函数和函数中各个参数的用法. 一般error函数返回的参数有三个 ...
 - ASP.Net Core 2.2 MVC入门到基本使用系列 (二)
			
本教程会对基本的.Net Core 进行一个大概的且不会太深入的讲解, 在您看完本系列之后, 能基本甚至熟练的使用.Net Core进行Web开发, 感受到.Net Core的魅力. 本教程知识点大体 ...
 - bower 安装后 jade 引用404问题
			
这个问题困扰我接近2小时,这是我在stackoveflow 上面挖到的 原文地址:http://stackoverflow.com/questions/21821773/configure-node- ...
 - matplotlib可视化之如何给图形添加数据标签?
			
当我们获取完数据之后,一般来说数据可视化呈现的最基础图形就是:柱状图.水平条形图.折线图等等,在python的matplotlib库中分别可用bar.barh.plot函数来构建它们,再使用xtick ...
 - 使用jQuery实现一个类似GridView的编辑,更新,取消和删除的功能
			
先来看看下面实时效果演示: 用户点击编辑时,在点击行下动态产生一行.编辑铵钮变为disabled.新产生的一行有更新和取消的铵钮,点击“取消”铵钮,删除刚刚动态产生的行.编辑铵钮状态恢复. 更新与删除 ...
 - 30_网络编程-socketserver
			
一.socketserver socketserver可以实现和多个客户端通信.它是在socket的基础上进行了一层封装,也就是说底层还是调用的socket,在py2.7里面叫做Socke ...
 - 前端在js中获取用户所在地区的时间与时区
			
var times = Date() // 如果这种方式不行就使用 New Date() "Sat Jan 05 2019 10:35:24 GMT+0800 (中国标准时间)" ...
 - ubuntu下wps无法使用搜狗输入法输入中文
			
sudo vim /usr/bin/et sudo vim /usr/bin/wps sudo vim /usr/bin/wpp 以上三个文件,都加入如下内容后重新打开文档即可 export XMOD ...