2012-07-20 62 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

相關問題