继续追求将protobuf-net屈服于我的意愿...
我在Stack Overflow上看到了一些关于如何动态添加子类以使得序列化器能够对子类进行编码的问题,例如 this 或 this 我的情况有点不同,我有一个基类,在后期绑定的代码中可能会被子类化,并且我想将其序列化为BASE类,并完全忽略子类的字段/属性。
我需要这样做的原因是,稍后当我反序列化数据时,子类的代码甚至不可用,因此构造子类甚至都不可能。
有没有办法限制/禁止子类序列化?
在我的情况下,我有一个List,其中一些项目是DerivedClass。
我想找到一种方法,使protobuf-net将所有内容都序列化为BaseClass,并且也可以反序列化为BaseClass...
我尝试过查看代码,但并没有找到太有用的东西。
我在Stack Overflow上看到了一些关于如何动态添加子类以使得序列化器能够对子类进行编码的问题,例如 this 或 this 我的情况有点不同,我有一个基类,在后期绑定的代码中可能会被子类化,并且我想将其序列化为BASE类,并完全忽略子类的字段/属性。
我需要这样做的原因是,稍后当我反序列化数据时,子类的代码甚至不可用,因此构造子类甚至都不可能。
有没有办法限制/禁止子类序列化?
在我的情况下,我有一个List,其中一些项目是DerivedClass。
我想找到一种方法,使protobuf-net将所有内容都序列化为BaseClass,并且也可以反序列化为BaseClass...
我尝试过查看代码,但并没有找到太有用的东西。
TypeModel.ResolveProxies
值得一看。我不反对在这里添加一个特定于 protobuf-net 的 API。 - Marc Gravell