c# - 如何使用不断变化的模式处理 XML 反序列化
问题描述
我们有一个以 XML 格式接收数据的服务,并且有一个伴随的命名空间/模式定义,通常每年更改一次,有时甚至更多。
该模式描述了一个非常大的对象,我们只使用它的一小部分,自从我处理它以来至少 2 年没有改变。但是,架构更改迫使我们重新生成 C# 类、重新构建和重新部署应用程序。
除非我们使用的部件发生变化,否则不必触摸应用程序会很好。
对于使用特定命名空间设置的单独一次性应用程序,我让代码将不兼容的命名空间替换为兼容的命名空间,并以这种方式反序列化数据。
这个问题有没有更优雅的解决方案?
编辑:我们收到的数据只是整个模式的子集,这就是为什么用命名空间替换反序列化它不是问题的原因。
解决方案
推荐阅读
- java - 如何从地图中获取偶数值,然后将值键添加到列表中?
- amazon-redshift - 用于动态 json 文件的 Redshift JSONPaths 文件
- java - Maven generatePackage 用于从模式定义生成类的 wsdl
- html - 用画布定位
- typescript - 为什么打字稿不能正确推断条件的泛型类型?
- openlayers - 尝试在 OpenLayers 上刷新 TileLayer
- c# - 在使用 .NET Framework 4.8 项目中将 NuGet 包内容标记为“复制到输出”
- java - 如何使用带有 Selenium 和 Java 的 XPath 提取表中迭代特定行的文本
- javascript - PWA 应用程序中的文件可以缓存多长时间以及可以缓存的文件的最大大小?
- c# - 当我将 ForeignKey 添加到另一个 DbContext 时,Ef 正在创建新表