使用ProtoBuf-Net,如何(反)序列化多维数组?

9

由于ProtoBuf-Net不支持序列化/反序列化多维数组,那我该如何管理我的数组呢?

1个回答

8
这实际上是底层protobuf wire格式的限制;它只支持单维数组。有两种选择:首先,将其作为线性数组发送,并分别发送维度。您还可以将其表示为每个具有数组的对象列表 - 实质上是一个嵌套数组,但具有中间步骤。这两种方法中,第一种方法更简单、更高效。无论哪种方式,如果您要发送像整数之类的东西,应该查看“packed”编码(通过选项属性可用)-这可以进一步减少数组等的有效载荷。

谢谢。这正是我所想的。但愿 Google 在他们所有的智慧中能够提供一种优雅地处理这种情况的方式。我猜不会吧。 - Stécy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接