首页 > 其他分享 >gRPC入门学习之旅(五)

gRPC入门学习之旅(五)

时间:2024-04-06 09:22:25浏览次数:23  
标签:入门 之旅 gRPC 如下 选择 Grpc 添加 Studio

 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>

 

 

标签:入门,之旅,gRPC,如下,选择,Grpc,添加,Studio
From: https://www.cnblogs.com/chillsrc/p/18117157

相关文章

  • 中间件 ZK分布式专题与Dubbo微服务入门 8-2 dubbo 入门简介
    0课程地址https://coding.imooc.com/lesson/201.html#mid=12740 1重点关注1.1本节内容dubbo环境搭建版本及入门简介 1.2环境版本要求dubbo2.5.3及其以上jdk6及其以上maven3及其以上 1.3为什么要用dubbo......
  • Redis各个方面入门详解
    目录一、Redis介绍二、分布式缓存常见的技术选型方案三、Redis和Memcached的区别和共同点四、缓存数据的处理流程五、Redis作为缓存的好处六、Redis常见数据结构以及使用场景七、Redis单线程模型八、Redis给缓存数据设置过期时间九、Redis判断数据过期的原理十......
  • docker的安装及入门指令
    目录一、将docker安装到云服务器步骤1.更新系统yum版本2.安装所需依赖3.添加docker仓库设置(使用的是阿里云)4.安装docker引擎5.启动docker并开启自动启动6.检查是否安装成功,成功会显示相应版本,否则安装失败二、docker常用命令1.从docker镜像仓库搜索所有与mysql相关......
  • html入门基础
    html主要框架:<html>        <!--头部-->        <head>          <title>标题</title>        </head>        <!--主体-->        <body>        </body></html>一、标签1.加粗<strong></strong> ......
  • PS从入门到精通视频各类教程整理全集,包含素材、作业等(5)
    PS从入门到精通视频各类教程整理全集,包含素材、作业等最新PS以及插件合集,可在我以往文章中找到由于阿里云盘有分享次受限制和文件大小限制,今天先分享到这里,后续持续更新初寒调色案例及练习图等文件https://www.alipan.com/s/k5bdZJrnacS提取码:s1r6点击链接保存,或者复......
  • PS从入门到精通视频各类教程整理全集,包含素材、作业等(6)
    PS从入门到精通视频各类教程整理全集,包含素材、作业等最新PS以及插件合集,可在我以往文章中找到由于阿里云盘有分享次受限制和文件大小限制,今天先分享到这里,后续持续更新橘子老师章节9-17图像的调色等文件https://www.alipan.com/s/6xF4ubiQDAD提取码:fz86点击链接保存......
  • 疯狂Python讲义学习笔记——第2章变量和简单类型2.4字符串入门
    思维导图          字符串的意思是“一串字符”,比如"Hello,Python"是一个字符串,"Howdoyoudo?"也是一个字符串。Python要求字符串必须使用引号括起来,可使用单引号或双引号,只要两边的引号能配对即可。4.1字符串和转义字符        字符串的内容几乎可......
  • kettle从入门到精通 第五十一课 ETL之kettle Avro input
    1、我们在学习nifi的过程中有接触到Avroschema,当时我在想kettle应该也支持Avro,果不其然kettle也是支持Avro文件的读和写的。今天我们一起来学习下kettle中如何使用Avroinput读步骤。对Avro不了解的,可以学习文章ETL工具-nifi干货系列第四讲Avroschema序列化框架。打开spoo......
  • 使用阿里云试用Elasticsearch学习:1.1 基础入门——入门实践
    阿里云试用一个月:https://help.aliyun.com/search/?k=elastic&scene=all&page=1官网试用十五天:https://www.elastic.co/cn/cloud/cloud-trial-overviewElasticsearch中文文档:https://www.elastic.co/guide/cn/elasticsearch/guide/current/_document_oriented.html控制台......
  • 书生·浦语大模型全链路开源体系——学习笔记day2&day3--纯纯新手入门
    学习链接:tutorial/helloworld/hello_world.mdatmain·InternLM/tutorial(github.com) 【精彩,照着做就能体验很多本来遥不可及的东西】笔记分享链接:https://github.com/InternLM/tutorial/discussions/37 本笔记定位是对学习链接的补充和小白发牢骚,希望大佬能愿意点评一......