c# - .net 使用动态类型反序列化 xml
问题描述
在使用 .net 反序列化 xml 文件时遇到问题。我有一堆 xml 文件,并希望将它们反序列化为从 XSD 生成的匹配类。
但我不知道,这些 XML 文件中的哪些包含来自哪个类的序列化对象:
<?xml version='1.0' encoding='UTF-8'?>
<foo xmlns="http://foo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://foo">
</foo>
根据 c# 类看起来像这样:
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.7.3081.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://Foo")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://foo", IsNullable=false)]
public partial class Foo {
}
我想在运行时确定 XML 类型。有没有办法做到这一点?(除了检查根元素并自己确定正确的类型)
在此先感谢您的帮助!
解决方案
推荐阅读
- pytest - pytest_report_teststatus 钩子在会话范围的拆卸固定装置之后执行
- c# - 如何使用c#找到3个点的最小x坐标
- pandas - 使用具有相同索引和列的两个数据框创建新数据框
- django - 如何使用 django 模型将“注释”数据添加到具有多个“值”的查询中?
- go - gorm beforeDelete 无法获取结构值
- c++ - 从二维数组创建 cv::Mat 图像
- java - 如何禁用按钮以打开谷歌地图 - Google API android studio java
- python - 使用 NaN 获得熊猫系列模式的最快方法
- javascript - 将 HTML5 表单输入添加到服务器端文本文件
- python - 在条件python上停止程序