在.NET中是否有生产质量的Google Protocol Buffers实现

时间:2009-09-03 14:34:50

标签: .net protocol-buffers

标题说出来了!

我知道Jon Skeet正在进行实施,我听到了一个采访(Dot net Rocks?),他暗示这是w.i.p。

最新的page只显示版本号。那么,现在生产准备好了吗?

感谢

3 个答案:

答案 0 :(得分:11)

Protocol Buffers有两个主要实现:

  • Mine(主要是Java代码的一个端口)
  • Marc Gravell的ProtoBuf-Net(更多WCF友好,重新实现)

我知道Marc不久前正处于重大改造的中间;我不知道他是不是。

据我所知,我自己的端口是可行的(禁止在几天前报告的打包类型大小的错误)但是在一代方面缺乏一些润色。一些用户对Silverlight兼容性感兴趣,我一直在努力但还没有尝试过。 (基本上我在使用的Silverlight中缺少一些方法;我认为可能现在已经迁移了所有这些方法 - 我需要检查。)

我不知道这些实现是否适用于任何系统,但我很乐意尝试解决您提出的任何错误。请注意,我打算实现主要2.2代码中出现的“lite”PB;他们会使已经很复杂的遗产变得更加糟糕。我将介绍一个额外的选项,允许为C#单独指定模式(速度/大小优化)。

答案 1 :(得分:3)

Doh .... John Skeet打败了我!

您需要查看protobuf Google代码页上的Other languages implementations页面...

有3个.net实现。

dotnet-protobufs by Jon Skeets

protobuf-net by Marc Gravell

protosharp

第一个是原始protobuf的C#克隆,它只支持C ++,Java和Python。

第二个已经大大扩展,以适应更多C#,甚至可以用于原生远程处理。如果你不进行跨平台工作,我会使用它。

当我看到最后一个时,没有看到任何有理由在前两个使用它。

答案 2 :(得分:1)

您是否也在Google Code上看到了这个protobuf-net