,我是 protobufs 的新手,目前正在编写一个从 nats 服务器读取数据的客户端。从 nats 服务器发送的数据是 protobuf。,我正在编写的客户端是用 go 编写的。这是我编写的 .proto 文件:,发布服务器是用 c# 编写的,其原始消息的代码如下:,在尝试解组数据时出现此错误,这就是我解析数据的方式:,我从服务器接收到的示例字节数据:,添加更多详细信息:,这就是 c# 发送数据的方式:,这是feedmessage的结构(executionreport也间接继承它),这就是
serializetoarray()
的工作原理:,不知道具体原因是什么。但我写的proto文件似乎是错误的。我浏览了几篇面临相同错误的帖子,但大多数都没有解决相同的问题。如果需要任何其他详细信息,请告诉我。,请帮我解决这个问题。,根据评论中的讨论,我成功地整理了数据。,注释:,这是文件夹结构:,bcl.proto:,此文件是从 github 复制的。 com/protobuf-net/protobuf-net。这是必需的,因为 .net 实现使用此原始文件中的 decimal
和 guid
。,execution.proto,原型/,此文件夹中的文件是使用以下命令从 proto 文件生成的:,go.mod,main.go,问题中提供的数据的输出:,