【发布时间】:2013-04-11 16:27:38
【问题描述】:
我有一个从类序列化的二进制文件。 该类已更新。
现在我需要将旧文件反序列化为新类。
我无法访问旧代码,但我可以访问旧类。
类是使用 BinaryFormatter 序列化的。
有没有办法做到这一点?
如果没有,也许有办法反序列化并仅保存两个版本中出现的数据?
【问题讨论】:
-
问题是什么?现在会发生什么? (什么例外等)。做了哪些改变?添加字段?删除?改名了?子类化?什么?另外:你怎么不能访问旧源?
-
引用的话题讲的是另一个方向,但分辨率是一样的。
-
关于版本化序列化的总体主题:是的……BinaryFormatter 在这方面并不出色……这是 protobuf-net 等工具存在的众多原因之一。
-
同意 Marc - protobuf 是要走的路! (顺便说一句,评论+1)。
标签: c# .net serialization versioning versions