首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式升级XML架构

以编程方式升级XML架构
EN

Stack Overflow用户
提问于 2010-06-29 21:10:52
回答 1查看 885关注 0票数 1

由于平台供应商需要将存储机制存储在XElement对象中,而不是存储在我在其数据库中创建的数据表中,因此我正在重新编写一个项目。它正在变得痛苦,我需要一些洞察力。

我可以使用XmlSerializer将我的对象图转换为Xml,并对给定的XElement对象进行读写,但是当我需要更改对象图时,我不确定如何升级Xml数据。

有没有人遇到过这种情况,哪些文章被证明是学习如何构建这样一种更新方法的最佳方法。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-01 06:50:38

我以前也遇到过这种令人沮丧的情况...我认为这不能使用XmlSerializer来完成。XmlSerializer编译一个序列化例程,该例程是围绕当前类型层次结构自定义构建的。如果更改太多,XML将与新的类结构不兼容。

我不认为会生成任何XML模式,唯一的“模式”是编译的ad-hoc XML序列化程序代码。

你可以通过1)创建反映你的改变的新类,2)将XML反序列化为旧类,3)在新旧对象之间应用变形,4)序列化新对象,5)将类的名称改为旧的,6)替换XML中的临时名称,

但这是非常痛苦的(尽管这可能是一次性的)。

如果您需要处理频繁的更改(或者如果您使用不利于序列化的编译器,如当前的F# one),这里最好的想法是编写您自己的XmlSerializer (可能使用Linq2XML)来处理代码更改。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3140909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档