1
.Net
ProtoBuf
的ProtoMember
如何工作在继承链中?例如,看看下面的类。ProtoBuf属性ProtoMember是否继承C#中的标记值
[ProtoContract]
public class BaseClass
{
[ProtoMember(1)]
public int Id { get; set; }
[ProtoMember(2)]
public string Name { get; set; }
}
[ProtoContract] //required?
public class DerivedClass : BaseClass
{
[ProtoMember(3)] //can tag value be 1 ?
public string Category { get; set; }
}
问题在内联代码中提到。
(1)如果基类已经是ProtoContract
,我需要标记派生类ProtoContract
?的ProtoMember
(int
)
(2)为得到的类的属性,我可以重复使用标记值在基类属性已经使用?
感谢您的快速反应。你能详细解释一下吗? *“是的,但你也应该设置派生类型的命令”*? –
当然,你应该添加属性'[ProtoInclude(intOrder的typeof(DerivedClass))]'到基本类型;或者使用另一种方式映射的静态类RuntimeTypeModel –