C# protobuf 实践

2019-04-02  本文已影响0人  炫子_260f

环境

windows 10
VisualStudio 2015

Usage

  1. The easiest way how to use C# protobufs is via the Google.Protobuf NuGet package. Just add the NuGet package to your VS project.
    通过NuGet下载Google.Protobuf

  2. You will also want to install the Google.Protobuf.Tools NuGet package, which contains precompiled version of protoc.exe and a copy of well known .proto files under the package's tools directory.
    通过NuGet下载Google.Protobuf.Tools

  3. To generate C# files from your .proto files, invoke protoc with the --csharp_out option.
    增加--csharp_out命令生成对应的cs文件

具体说明

第1步 和 第2步很明确,到第3步说明特别简单,项目中点击重新生成,也生成不了对应的cs文件,需要命令生成,没有android版方便。
原本打算参考 C# protobuf的使用方法中的方法,下载protogen,然后用简单命令生成cs文件。

image.png
但是使用后,发现,新版本的protogen 只支持proto2,不支持proto3,所以放弃。
image.png

现在放代码

.proto文件

proto和java版本一样,只在开头写了namespace

option csharp_namespace = "TestProject.Model.Proto";
命令

在项目目录中:packages\Google.Protobuf.Tools.3.7.0\tools\找到protoc.exe,进入目录,
拷贝ResponsePB.protoprotoc.exe目录运行:

protoc --csharp_out=./ ResponsePB.proto

然后将生成的cs文件拷贝到使用的项目中就可以了。

参考网站

https://github.com/protocolbuffers/protobuf/tree/master/csharp
https://developers.google.com/protocol-buffers/docs/reference/csharp-generated
https://blog.csdn.net/u011484013/article/details/51164773

上一篇下一篇

猜你喜欢

热点阅读