.net - 我可以在 .NET 4.0 项目中使用 System.Xml 2.0 吗?

标签 .net reflection xml-serialization

我需要在刚刚从 .NET 2.0 升级的 .NET 4.0 项目中反序列化一堆 XML 文件。因为序列化函数 have changed ,反序列化现在失败,因为我的类继承的第三方对象库中的一堆属性没有标记为 [XmlIgnore]。

问题:我可以使用反射从 .NET 4.0 项目中调用 2.0 版 System.Xml.dll 中的 Deserialize() 函数吗?

我已经尝试过:

Assembly.Load("System.Xml, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089");

但是失败并出现 FileNotFoundException(它确实搜索了 GAC,对吧?)

最佳答案

你不能——据我所知。

当您为项目设置目标框架时,就是这样。您将获得 System.Xml 2.0 或 4.0。

但是,我对 2.0 和 4.0 之间的序列化之间的差异感到困惑。 [XmlIgnore] 肯定存在于 2.0 中吗?

关于.net - 我可以在 .NET 4.0 项目中使用 System.Xml 2.0 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9801900/

相关文章:

c# - 类型 'X' 不存在类型 'X.X' 错误

.net - System.Reactive dll 丢失

c# - 关于 .NET 的 2 个基本但有趣的问题

java - 注入(inject)带注释的方法参数

go - 为什么这个测试使用 reflect.deepEqual 会失败?

c# - Xml反序列化为对象,反射为类型

.net - f#:已编译程序中的 windows 窗体

Java - 使用反射查找对象的字段

c# - 有什么方法可以使 XmlSerializer 以定义的顺序输出 xml?

.net - 如何 XML 序列化 DateTimeOffset 属性?