我最初有这样的课程
class Y : SuperClass
{
int a;
int b;
int c;
}
我从来没有使用过SuperClass的任何东西,所以我决定将我的代码折射成新的代码:
class Z
{
int a;
int b;
int c;
}
您可以看到Z具有完全相同的序列化数据。
现在我已将许多Y:SuperClass数据序列化为二进制文件,因此我想将它们全部迁移到Z类并重新序列化。
我可以将这些文件加载回类Y:SuperClass的实例中,但是如何将它们序列化为Z类呢?请注意,真实的变量包含许多变量,我不能简单地为所有这些变量z.a = y.a; z.b = y.b; ...
。我希望有更多自动转换为类的方法,你确定变量名称匹配,如反射或更简单的东西。谢谢。
答案 0 :(得分:1)
您可以使用该类反序列化为其他类型: System.Runtime.Serialization.SerializationBinder
此方法在高级二进制序列化部分中进行了解释: