我有一个实现ISerializable
. 由于以下错误,在向该类添加新字段后无法反序列化旧的二进制数据:
SerializationException:找不到名为“x”的元素。
在这种情况下,序列化程序不应该自动分配null
或分配0
给该字段吗?我尝试使用Attribute [OptionalField(VersionAdded = 2)]
但结果相同。
我可以通过检查SerializationEntry
数组中是否存在字段名称来处理它,但这是正确的方法吗?有没有更好的办法?