servicestack ServiceStack ProtoBuff序列化到自定义流
几天前,我发布了一个关于使用BinaryFormatter序列化ResponseStatus属性的问题。Mythz指出,这不是最快的方式,所以我决定切换到另一个格式化程序。试过ProtoBuff和MsgPack,我现在在ProtoBuf上 我真正的问题是:我试图理解Protobuf如何知道ServiceStack Dto应该如何序列化。我尝试向现有dto、ProtoContract和ProtoMember(0、1、2、3等)以及DataContract和DataMember添加所有可能的属性 除此之外,我不使用ServiceStack自己的客户端,而是尝试将请求序列化到现有流 如果我不这样做:servicestack ServiceStack ProtoBuff序列化到自定义流,servicestack,protocol-buffers,servicestack,Protocol Buffers,几天前,我发布了一个关于使用BinaryFormatter序列化ResponseStatus属性的问题。Mythz指出,这不是最快的方式,所以我决定切换到另一个格式化程序。试过ProtoBuff和MsgPack,我现在在ProtoBuf上 我真正的问题是:我试图理解Protobuf如何知道ServiceStack Dto应该如何序列化。我尝试向现有dto、ProtoContract和ProtoMember(0、1、2、3等)以及DataContract和DataMember添加所有可能的属性 除
ServiceStack.ProtoBuf.ProtoBufFormat.Model.Add (typeof(NameSpacePlaceholder.Service.Dto.GetNodes), false);
我得到了一个关于无法推断的类型和合同的错误,
如果我添加了这段代码,一切都会继续进行,但是反序列化的对象是空的
我正在使用此命令序列化:
ServiceStack.ProtoBuf.ProtoBufFormat.Model.Serialize (ms, myObject);
ServiceStack.ProtoBuf.ProtoBufFormat.Model.Deserialize (ms, null, deserializationType);
以及反序列化:
ServiceStack.ProtoBuf.ProtoBufFormat.Model.Serialize (ms, myObject);
ServiceStack.ProtoBuf.ProtoBufFormat.Model.Deserialize (ms, null, deserializationType);
我想我遗漏了什么。它可能与名称空间有关吗?我查看了ServiceStack.ProtoBuff中的一些代码,它并不难理解,但我无法理解
我现在还不清楚的事情:
非常感谢,我讨厌自己发布答案,这意味着我一开始搜索不够 我了解到以下属性非常重要: