我在Visual Studio中使用自定义工具“ProtoBufTool”从.proto文件生成C#类文件。但是,生成的输出类没有parseFrom和mergeFrom方法。我错过了在原型文件或工具设置中提供某些选项或其他内容吗?我在网上找不到任何可以解决这个问题的线索。另外,除了消息之外,我的proto文件在文件开头只有选项* optimize_for = SPEED; *。我对proto文件没有任何构建操作。
对此的任何帮助将不胜感激。
答案 0 :(得分:0)
从工具的名称来看,听起来就像是在使用protobuf-net。这只是c#/ .net的several protobuf implementations之一,但它不是直接端口,并且具有不同的API - 相反,它试图是惯用的.net 第一个,以及一个序列化器< em> second (例如,你甚至不需要.proto - 你可以使用常规的POCO类型)。例如,典型用法可能是:
var obj = Serializer.Deserialize<YourType>(inputStream);
如果你想要一个与java等实现具有相同API的实现,那么protobuf-csharp-port可能更符合你的喜好。这是java API的更直接的端口。