要建立 gRPC 的 Server,須先將 GRPC.Tools、GRPC.Core、Google.Protobuf 這三個 NuGet 套件加入參考。
1 | ... |
然後設定從 Proto 檔產生需要的程式部分。
1 | <ItemGroup> |
編譯後可在 obj 下看到產出的檔案。
接著開始實作 Service。
繼承產出的 Service 基底類別。
1 | ... |
並覆寫該服務的方法即可。
1 | ... |
程式寫起來會像下面這樣 (這邊筆者只是簡單的將調用時送進來的人名做些加工回傳而已):
1 | using System.Threading.Tasks; |
Service 實作完接著要實作 Server 的部分。
建立 Grpc.Core.Server 實體。
1 | ... |
指定 Service 要用哪個類別去處理。
1 | ... |
指定 Server 的位置與 Port。
1 | ... |
啟動 Server。
1 | ... |
等待終止訊號,最後停止 Server 即可。
1 | ... |
程式寫起來會像下面這樣:
1 | using System; |
運行起來就可以提供 gRPC 的服務了。