gRPC入門學習之旅(五)

DotNet菜园發表於2024-04-06

gRPC入門學習之旅(一)

gRPC入門學習之旅(二)
gRPC入門學習之旅(三)
gRPC入門學習之旅(四)

透過之前的文章,我們已經建立了gRPC的服務端應用程式,那麼應該如何來使用這個服務端應用程式呢,接下來介紹如何透過客戶端來使用這個服務端應用程式。

3、建立gRPC客戶端

3.1、建立gRPC的控制檯客戶端專案

1. 在Visual Studio 2022選單欄上選擇“檔案—》新建—》專案”。

或者在Visual Studio 2022的解決方案資源管理器中,使用滑鼠右鍵單擊“解決方案‘Demo.GrpcService’”,在彈出的快捷選單中選擇“新增—》新建專案”。如下圖。

2. Visual Studio 2022彈出的“建立新專案”的對話方塊中做如下選擇。如下圖。

  • 在最左邊的下拉框中,選擇 “C# ,如下圖中1處
  • 在中間的下拉框中,選擇 “所有平臺”,如下圖2處。
  • 在最右邊的下拉框中,選擇“控制檯”,如下圖3處。
  • 在下圖中4處,選擇“控制檯應用”模板,點選“下一步”按鈕。

4.在彈出的“配置新專案”的對話方塊中,在“專案名稱”輸入框中,輸入“Demo.Grpc.Cmd”。然後使用滑鼠點選“下一步”按鈕。

5. 在彈出的“其他資訊”的對話方塊,在“框架”下拉框中,選擇“NET 7.0(標準期限支援)”。其他值選擇預設值即可。然後使用滑鼠點選“建立”按鈕。專案建立成功。

6.在解決方案資源管理器中——>在專案Demo.Grpc.Cmd中的依賴項上滑鼠右鍵單擊——>彈出一個選單,選中“管理NuGet程式包”,如下圖。

7. 在開啟的NuGet包管理介面的中選擇“瀏覽”標籤頁,在搜尋框中輸入“google”,找到最新版本google.protobuf,點選安裝。如下圖。

8. Visual Studio 2022 開始安裝Google.Protobuf,會彈出安裝確認介面,點選“OK”按鈕。

9. 在開啟的NuGet包管理介面的中“瀏覽”標籤頁的搜尋框中輸入“grpc”,然後依次安裝以下三個包。

Grpc.Net.Client

Grpc.Tools

Grpc.Net.ClientFactory

10. 在以上四個包全部安裝完成之後,NuGet包管理介面的中選擇“已安裝”標籤頁,會看到剛才安裝的四個包,如下圖。

3.2、新增Proto協議檔案引用

1. 在 Visual Studio 2022 的“解決方案資源管理器”中,使用滑鼠右鍵單擊“Demo.Grpc.Cmd”,在彈出的快捷選單中選擇“新增—》服務引用或是連線的服務”。“服務引用”和“連線的服務”均在同一個UI 下進行管理。 如下圖。

2.在出現的工具視窗中,選擇“連線的服務”部分,然後在“服務引用”部分中選擇“新增服務引用”,選擇“gRPC”並點選“下一步”。如下圖。

3.在“新增新的gRPC服務引用”彈出介面中,選擇“檔案”,點選“瀏覽”按鈕,在彈出對話方塊中找到 Demo.GrpcSERVICE 專案中的 protos 資料夾中的UserInfo.proto,在“選擇要生成的類的型別”下保留“客戶端”,然後選擇“完成”。如下圖。

4.在新增完UserInfo.proto檔案之後,介面返回到“連線的服務”介面,會看到服務引用中有我們剛才新增的引用檔案。如下圖。

5. 使用 Visual Studio 2022的“新增連線的服務”功能時,UserInfo.proto 檔案將作為連結檔案而不是副本檔案新增到類庫專案中,因此對服務專案中檔案的更改將自動應用到客戶端專案中。 csproj 檔案中的 <Protobuf> 元素如下所示:

  <ItemGroup>

    <Protobuf Include="..\Demo.GrpcService\Protos\UserInfo.proto" GrpcServices="Client">
      <Link>Protos\UserInfo.proto</Link>
    </Protobuf>

  </ItemGroup>

相關文章