C#中使用gRPC
由于有NuGet,使得C#在配置項目時非常簡單。
1. 在NuGet中添加ProtocolBuffer和gRPC引用
protocol buffer 3.0版本,在NuGet插件界面選擇Include Prerelease,查找google protocol buffer。
如果不選擇include rerelease,查找到的protocol buffer是2.4的,無法編譯通過gRPC的example。
2. 定義proto
設計proto協議文件,包括服務協議和數據。gRPC必須使用protocol buffer3.0版本,所以syntax設置為proto3。
Greeter是服務名稱
HelloRequest是請求數據
HelloReply是回復數據
3. 生成proto訪問類
定義proto文件后,通過protocol buffer3.0提供的protoc.exe工具生成訪問類。這里使用gRPC定義的protoc的C#插件grpc_csharp_plugin.exe,而不是使用protoGen.exe。
將以下幾個文件放在同一個文件夾中:
創建一個bat文件,編寫如下命令行:
protoc.exe -I=. --csharp_out=. --grpc_out=. --plugin=protoc-gen-grpc=grpc_csharp_plugin.exe helloworld.proto執行bat文件,得到proto的訪問類:
helloworld.cshelloworldGrpc.cs4. 創建C#項目
將兩個訪問類文件添加到C#項目中,將gRPC的C# example拷貝到Program.cs中,編譯通過。
原文地址:http://www.cnblogs.com/polinzhuo/p/5326801.html
.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: 如何使 WebAPI 自动生成漂亮又实用
- 下一篇: C#读书雷达 | TW洞见