XML DeSerialize - 可以在文件中捕获额外的 XML 吗?

2024-03-26

有没有办法将您在课堂上没有预料到的额外 XML 标记捕获到文件中? 例如:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Xml.Serialization;

namespace XmlDeserializerTest
{
    class Program
    {
        static void Main(string[] args)
        {

            XmlSerializer deserializer = new XmlSerializer(typeof(PersonInfo));
            StreamReader reader = new StreamReader(@"C:\XML\Xml.xml");
            object obj = deserializer.Deserialize(reader);
            PersonInfo D = (PersonInfo) obj;
            Console.WriteLine(D.address.Age);
            reader.Close();
            Console.ReadLine();
        }

    }


    [XmlRoot("MyInfo")]
    public class PersonInfo
    {
        public string Name { get; set; }
        public string Type { get; set; }
        [XmlElement("Address")]
        public Loc address = new Loc();

    }
    public class Loc
    {
        public string Age { get; set; }
        public string Location { get; set; }

    }
// File used by this program:

//  <?xml version="1.0" encoding="utf-8"?>
//  <MyInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
//    <Address>
//        <Age>51</Age>
//        <Location>Tulsa</Location>
//        <State>Oklahoma</State>
//    </Address>
//    <Name>Scott</Name>
//    <Type>Programmer</Type>
//</MyInfo>

}

这不会产生错误,它只是不加载状态信息。它只是忽略它。我想知道是否有办法捕获这个或将额外的代码发送到另一个类或其他东西。

谢谢, 斯科特


我相信你可以使用XmlSerializer's UnknownAttribute http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer.unknownattribute.aspx, UnknownElement http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer.unknownelement.aspx等事件来捕获此类情况。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XML DeSerialize - 可以在文件中捕获额外的 XML 吗? 的相关文章

  • 如何将包含 5000 条记录的 Excel 文件插入到 documentDB 中?

    我有一个 Excel 文件 最初约有 200 行 我能够将 Excel 文件转换为数据表 并且所有内容都正确插入到 documentdb 中 Excel 文件现在有 5000 行 在插入 30 40 条记录后不会插入 其余所有行不会插入到
  • 将图像文件从网址复制到本地文件夹?

    我有该图像的网址 例如 http testsite com web abc jpg http testsite com web abc jpg 我想将该 URL 复制到 c images 中的本地文件夹中 而且当我将该文件复制到文件夹中时
  • 使用API​​隐藏程序标题栏

    它可以使用 c 和 windows api 删除窗口控制台标题栏 如果是的话如何 请 这个简单的应用程序隐藏并显示其所在控制台的标题栏 它会立即将控制台标题更改为 guid 以查找窗口句柄 然后 它使用 ToggleTitleBar 使用找
  • 为什么这个函数指针赋值在直接赋值时有效,但在使用条件运算符时无效?

    本示例未使用 include 在 MacOS10 14 Eclipse IDE 上编译 使用 g 选项 O0 g3 Wall c fmessage length 0 假设这个变量声明 int fun int 这无法通过 std touppe
  • 无法从 Web api POST 读取正文数据

    我正在尝试从新的 Asp Net Web Api 中的请求中提取一些数据 我有一个像这样的处理程序设置 public class MyTestHandler DelegatingHandler protected override Syst
  • Qt 计算和比较密码哈希

    目前正在 Qt 中为测验程序构建面向 Web 的身份验证服务 据我了解 在数据库中存储用户密码时 必须对其进行隐藏 以防落入坏人之手 流行的方法似乎是添加的过程Salt https en wikipedia org wiki Salt cr
  • 矩阵向量变换

    我正在编写一个代码来制作软件蒙皮器 骨骼 皮肤动画 并且我正处于 优化 阶段 蒙皮器工作得很好 并且在 Core 上 1 09 毫秒内对 4900 个三角形网格与 22 个骨骼进行蒙皮Duo 2 Ghz 笔记本 我需要知道的是 1 有人可以
  • 是否有像 gccxml 这样的用于生成包装器的 C 标头解析器工具?

    我需要为一种新的编程语言编写一些 C 标头包装器 并且想要类似 gccxml 的东西 但不完全依赖 gcc 以及它在 Windows 系统上带来的问题 只需要读C而不是C 只要有完整的文档记录 任何格式的输出都可以 Linux Solari
  • 默认值 C# 类 [重复]

    这个问题在这里已经有答案了 我在控制器中有一个函数 并且我收到表单的信息 我有这个代码 public Actionresult functionOne string a string b string c foo 我尝试将其转换为类似的类
  • 指向字节数组的指针

    由于 Misra C 的要求 我的一位同事想要使用指针声明 但我遇到了一些问题 Misra 安全关键指南 不会让我们纯粹的程序员使用指针 但会让我们对数组字节进行操作 他打算获取一个指向字节数组的指针 因此我们不会在堆栈上传递实际的数组 T
  • 编译器错误“错误:在文件范围内可变地修改了‘字符串’”

    考虑 include
  • 您可以在一个 Windows Azure 实例上部署多个 Web 应用程序吗?

    是否可以在一个 windows azure 小型计算实例中运行一堆 Web 应用程序 我正在考虑使用 Azure 作为放置一堆处于开发和非生产状态的项目 Web 应用程序 的地方 有些实际上已经被封存了 但我想在某个地方有一个活跃的实例 我
  • 更改 IdentityServer4 实体框架表名称

    我正在尝试更改由 IdentityServer4 的 PersistedGrantDb 和 ConfigurationDb 创建的默认表名称 并让实体框架生成正确的 SQL 例如 而不是使用实体IdentityServer4 EntityF
  • 在简单注入器中注册具有多个构造函数和字符串依赖项的类型

    我正在尝试弄清楚如何使用 Simple Injector 我在项目中使用了它 注册简单服务及其组件没有任何问题 但是 当组件具有两个以上实现接口的构造函数时 我想使用依赖注入器 public DAL IDAL private Logger
  • 系统错误 124 - SHFileOperation 的 ERROR_INVALID_LEVEL

    我在使用时遇到问题SHFileOperation SHFileOperation SHFILEOPSTRUCT https stackoverflow com questions 9191415 shfileoperation shfile
  • 将非算术类型作为参数传递给 cmath 函数是否有效?

    给定以下用户定义类型S具有转换功能double struct S operator double return 1 0 以及以下调用cmath http en cppreference com w cpp header cmath使用类型的
  • 纯虚函数可能没有内联定义。为什么?

    纯虚函数是那些虚函数并且具有纯说明符 0 第 10 4 条第 2 款C 03 的内容告诉我们什么是抽象类 顺便说一句 如下 注意 函数声明不能 同时提供纯说明符和定义 尾注 示例 struct C virtual void f 0 ill
  • 如何获取 QIcon 的文件/资源​​路径

    假设我做了这样的事情 QIcon myIcon resources icon ico 我稍后如何确定该图标的路径 例如 QString path myIcon getPath 问题是 没有getPath 会员 我找不到类似的东西 但肯定有办
  • 使用 Chrome 和 Selenium 设置 LocalStorage

    我正在尝试使用 OpenQA Selenium 和 Chrome 设置本地存储键和值 我认为这相当微不足道 但我似乎无法让它发挥作用 我对 C 很陌生 所以我可能错过了一些东西 无论如何 我有这个功能 public static void
  • 启动画面后主窗口出现在其他窗口后面

    我有一个带有启动屏幕的 Windows 窗体应用程序 当我运行该应用程序时 启动屏幕显示正常 消失并加载应用程序的主窗体 但是 当我加载主窗体时 它出现在包含该应用程序的 Windows 资源管理器目录下 这是运行启动画面然后运行主窗体的代

随机推荐

  • Django 无法连接到 mongoDB atlas

    最近 我开始了一个项目 使用 Django 后端和托管在 Atlas 平台上的 mongoDB 数据库制作一个 Web 服务器 这样我就不必担心在本地运行它 我仍处于设置的早期阶段并遇到了此错误 pymongo errors ServerS
  • SonarQube C# 分析失败“不是有效的指针行偏移”

    我已经使用 SonarQube 成功分析了一些项目一段时间 但现在遇到了一些错误 确切的错误是 12 26 01 413 ERROR Error during SonarQube Scanner execution java lang Il
  • 谷歌地图 API 3 上的 Infowindow 帮助

    与该网站上的其他人遇到的类似问题 它仅显示所有标记中最后一个标记的信息窗口信息 似乎无法用给出的任何解决方案解决这个问题 另外 我的最后一个标记根本不显示信息窗口
  • 适用于桌面和移动平台的 Twitter bootstrap 弹出窗口触发器

    Default popover http twitter github com bootstrap javascript html popovers触发选项是单击 但我需要将其更改为悬停 可以这样做 popover popover trig
  • 如何设置和获取文件详细属性中的值? C#

    我最近尝试了Shell32 dll 这允许我获取值 但不允许我设置它们 Tried DSOFile dll 它确实允许我读取很少的值 但不允许我设置它们 无论如何我可以做到这一点吗 尝试下面的链接这将帮助您解决您的问题 http www c
  • 在客户端,WCF操作合约的返回值为null!有什么解决办法吗?

    我的 WCF 服务中有一个操作契约 它返回该类的一个实例 它实际上是一个消息契约 不是数据合同 消息契约具有属性 gt MessageBodyMember 的属性 MessageContract WrapperName Authorizar
  • JQuery ajax 使用 POST 从启用 CORS 的服务器获取图像/png

    我正在编写 HTML5 Backbone Phonegap 应用程序Github 仓库 https github com marfnk sosmobileclient 它使用 52n 的 SensorObservationService R
  • 将弧度角转换为 CGVector

    使用 Sprite Kit 我试图设置一个SKPhysicsBody根据给定角度移动 例如 如果您希望精灵向右移动 您可以指定 1 571 弧度 为了将指定的角度转换为速度 我使用下面的方法将弧度转换为CGVector 我根据记忆实现的原始
  • 注释会减慢解释语言的速度吗?

    我问这个问题是因为我使用 Python 但它也适用于其他解释语言 Ruby PHP JavaScript 每当我在代码中留下评论时 我是否会减慢解释器的速度 根据我对解释器的有限理解 它以字符串形式读取程序表达式 然后将这些字符串转换为代码
  • 如何将查询结果限制为精确组匹配

    我有一个如下表 user item X Apple X Orange X Pear Y Orange Y Pear Z Apple Z Orange 我的目标是有 3 个搜索选项 ANY ALL 至少 EXACT Where ANY返回至少
  • 在 AFNetworking 2.x 中设置自定义标头后,RESTful API 未接收参数

    我遵循了建议的解决方案AFNetworking 2 0 向 GET 请求添加标头 https stackoverflow com questions 19466291 afnetworking 2 0 add headers to get
  • Angular 2+ 中的 Bootstrap 3 Datepicker(带或不带 jquery)

    我是 Angular 2 的新手 我正在尝试将 Bootstrap 3 Datepicker 集成到 AngularJS2 我使用了 解决方案 如何在 Angular 2 中使用 Bootstrap 3 Datepicker https s
  • 更改 Angular 中的检测周期 - 澄清吗?

    关于ChangeDetectorRef 我已经知道了 detectChanges实际上触发变化检测 同时 markForCheck 组件的实际变化检测是not已计划但将来何时发生 作为 当前或下一个 CD 周期 取自这里 https sta
  • 如何M2MQTT自动重连

    我正在尝试使用此协议 并且已经有 2 个客户端 一个用于发布 另一个用于订阅 和一个正在工作的经纪人 我的问题是我想在订阅客户端中实现重新连接功能 因为 wifi 信号不稳定并且不想每次都手动重新启动客户端 我该如何实现这一点 您可以使用
  • .NET 的 Environment.NewLine 的 R 等效项

    是否有 R 等效项环境 NewLine https msdn microsoft com en us library system environment newline v vs 110 aspx在 NET 中 我正在寻找一个角色对象 它
  • 打开特定主题的 .CHM 文件?

    我创建了一个 CHM 文件 然后当我在 c 中打开它时 我得到了第一个主题 我想打开它到一个指定的主题 这是我现在用来打开它的代码 Help ShowHelp this Resources ServerHelp chm 我希望能够将其打开到
  • 是否可以根据百分位值而不是原始输入绘制箱线图?

    据我所见 boxplot 方法需要一系列原始值 数字 作为输入 然后计算百分位数以绘制箱线图 我想要一种方法 通过它我可以传递百分位数并获得相应的boxplot 例如 假设我已经运行了多个基准测试 并且对于每个基准测试 我都测量了延迟 浮点
  • C++ 和 Boost:编码/解码 UTF-8

    我正在尝试做一个非常简单的任务 采用 unicode awarewstring并将其转换为string 编码为 UTF8 字节 然后以相反的方式 取string包含 UTF8 字节并将其转换为 unicode 感知wstring 问题是 我
  • 在 Magento 中复制并粘贴类别

    我想将我的第一个类别复制到 Magento 中的第二个类别 我应该怎么办 谢谢 韦斯利 By code
  • XML DeSerialize - 可以在文件中捕获额外的 XML 吗?

    有没有办法将您在课堂上没有预料到的额外 XML 标记捕获到文件中 例如 using System using System Collections Generic using System IO using System Linq usin