2012-07-20 69 views
1

我打算在我的WCF服务中使用protobuf-net库。客户端是Java-Android,我在这方面处理原始文件。Protobuf-net和.proto文件?

我应该手动编写.NET方面的类或protobuf-net以某种方式支持.proto文件吗?

回答

5

如果您正在使用interop,那么从.proto开始是最佳选择。对于protobuf-net,有一个命令行工具“protogen”和一个VS IDE插件,它允许你从.proto创建protobuf-net兼容的类,就像你为其他平台生成代码一样。两者都可以在protobuf-net项目网站上找到。如果你已经有了类,还有一些支持从protobuf-net类生成.proto,但这是不完整的(实际上,就v2而言,我只是在昨天写了它,所以它还没有在官方下载)。

如果您正在使用跨平台,您可能还需要考虑protobuf-csharp-port。这是由Jon单独并行实现的,它保留了与Java API类似的API。您可能会发现在平台之间使用相似的API以方便使用。

+0

Marc,对POCO - >。proto何时会正式进行评估吗?我从JSON迁移,所以我有C#端 - POCO,在Android端 - POJO :)现在在Android上与proto一起工作,我_have_创建.proto文件。我喜欢protobuf-net的工作原理,现在我要么需要从.proto生成类,以便匹配或手动编辑POCO的我已经(这看起来像nono) – katit 2012-07-20 16:44:22

+0

@katit I *字面*写了第一次剪切的v2 GetProto/GetSchema昨晚。它需要的是:我进行更多的测试,以及b:a.n.other有点“在野外工作”。欢迎您随时放手,让我知道您发现的任何问题。信心来自证据,如果你明白我的意思... – 2012-07-20 19:53:15

+0

我开始使用protogen,但命令行失败,然后我终于VS集成工作,但使其工作,我需要引用旧的protobuf-net.dll和开关它在重新生成后回来?理想情况下,我想为我的开发保留1个共享的.proto文件。是的,我想帮你测试一下! – katit 2012-07-20 19:58:44

相关问题