Protobuf-net跳过特定字段的反序列化

时间:2015-02-11 00:27:10

标签: serialization protobuf-net

我已将此课程序列化:

[ProtoContract]
public class TestClass
{
    [ProtoMember(1)] public int[] hugeArray;
    [ProtoMember(2)] public int x;
    [ProtoMember(3)] public int y;
    //lot more fields and properties to serialize here...

}

如何在反序列化期间跳过[ProtoMember(1)] hugeArray,以便只反序列化x,y和其他字段?

我的问题是,有时我很快就只需要获取'元数据',这是其他字段和属性所描述的,但有时我需要一个完整的对象。

1 个答案:

答案 0 :(得分:3)

两个选项:

  • 两个RuntimeTypeModel个实例(一个只手动构建,只指定了所需的字段)
  • 两个类型;即创建一个更简单的TestClass 简单地省略大字段 - 即TestClassMetadata - 并反序列化为 ; protobuf-net一点也不介意