1

我想知道在更改类、命名空间后有什么方法可以处理反序列化吗?

目前,我必须对 XML 的文本值进行编辑替换,用新命名空间替换旧命名空间。

有一个更好的方法吗?

4

1 回答 1

0

总是一个棘手的问题。除非您可以保证类不会更改,否则最好找到另一种序列化方法。

但是,要回答这个问题,您可以拥有Version该类的属性(或者如果您有很多,则将其放入基类中)。每当您更改课程时,您都需要记住增加它。

然后,您可以进行一系列“迁移”,这将知道如何将 XML 从一个版本转换为下一个版本。当您想要反序列化时,首先将文件加载为 XML,依次应用迁移(因为自文件创建以来可能已经发生了几次更改),然后反序列化现在转换的 XML。

于 2013-04-09T16:34:20.850 回答