当前位置: 首页 > news >正文

.netcore grpc一元方法详解

一、grpc服务端搭建

打开visual studio--》新建项目--》创建ASP.NET Core gRPC服务。 这里我是用的.NET 6.0做为底层框架,使用该框架支持grpc的功能更全面。令注使用nuget包Grpc.AspNetCore这里我使用的是2.40.0版本。

// 创建dollar.proto文件syntax = "proto3";import "google/protobuf/empty.proto";
option csharp_namespace = "GrpcProject";package dollar;service DollarRpc{rpc ServerOne (ServerRequest) returns (ServerResponse);rpc ServerTwo (ServerRequest) returns (google.protobuf.Empty);
}message ServerRequest{string name = 1;double height = 2;int32 age = 3;bool flag = 4;float x = 5;float y = 6;float z= 7;repeated string departments = 8;
}message ServerResponse
{bool result = 1;
}

创建好.proto文件,在项目文件中配置如下

 <ItemGroup><Protobuf Include="Protos\dollar.proto" GrpcServices="Server" ProtoCompile="true" /></ItemGroup>

也可以鼠标右键.proto文件属性选择Protobuf compiler 同时配置 gRPC Stub Classes项为Server only;同时Compile为true 进行编译;会自动生成服务端可用的基础代码。

同时需要在program或者startup中进行注册和启用:

        public static void Main(string[] args){var builder = WebApplication.CreateBuilder(args);builder.Services.AddGrpc();var app = builder.Build();app.MapGrpcService<DollarService>();app.Run();}

最后启动服务:

 

二、grpc客户端调用

  1. 创建客户端程序winform
  2. 引用Grpc.AspNetCore nuget包;里面包含Google.Protobuf、Grpc.AspNetCore.Server.ClientFactory、Grpc.Tool三个子包
  3. 引入服务端.proto文件
  4. 在项目文件中.proto文件为客户端文件,并进行编译生成客户端grpc代码
  <ItemGroup><Protobuf Include="Protos\dollar.proto" GrpcServices="Client" ProtoCompile="true" /></ItemGroup>

     5. 客户端代码

            var channel = GrpcChannel.ForAddress("https://localhost:7188");var dollarClient = new DollarRpc.DollarRpcClient(channel);ServerRequest request = new ServerRequest{Name = "test",Height = 100.3D,Age = 18,Flag = true,X = 50.32F,Y = 40.28F,Z = 35.6F,Departments ={ "测试一部", "测试二部", "测试三部","测试四部", "测试五部", "测试六部", "测试七部", "测试八部", "测试九部", "测试十部"}};// 服务方法一var response = dollarClient.ServerOne(request);// 服务方法二Empty empty = dollarClient.ServerTwo(request);

       6.启动服务调用执行结果

三、内容概述

这是简易的一元方法执行方式,后续会逐渐延申,尽量面面俱到的阐述所有功能点。

项目百度网盘:

链接:https://pan.baidu.com/s/1xs8HiGaZgiY-SUb6ZkRhGg 
提取码:i6ej

相关文章:

.netcore grpc一元方法详解

一、grpc服务端搭建 打开visual studio--》新建项目--》创建ASP.NET Core gRPC服务。 这里我是用的.NET 6.0做为底层框架&#xff0c;使用该框架支持grpc的功能更全面。令注使用nuget包Grpc.AspNetCore这里我使用的是2.40.0版本。 // 创建dollar.proto文件syntax "prot…...

自学网络安全(黑客)全网详细路线

前言 web渗透是网络安全大行业里入门板块&#xff0c;就像十年前的软件&#xff0c;前景非常被看好&#xff0c;薪资也很诱人。与软件测试和前端开发只需掌握一定的编程能力不同的是&#xff0c;渗透需要掌握的知识内容较多&#xff0c;花费的时间较长&#xff0c;渗透测试掌握…...

上半年210个数字化大单,花落谁家?

2023年&#xff0c;各地数字化采购项目有怎样的进展&#xff1f;最近&#xff0c;我们通过中国政府采购网、中国招投标公共服务平台、天眼查、企查查等渠道&#xff0c;梳理了2023年上半年政企数字化项目的中标情况&#xff0c;并从中看到今年数字化项目的市场特点。 01 金融千…...

Integer.bitCount()

先看一道算法题&#xff1a; 剑指 Offer 15. 二进制中1的个数 编写一个函数&#xff0c;输入是一个无符号整数&#xff08;以二进制串的形式&#xff09;&#xff0c;返回其二进制表达式中数字位数为 1 的个数&#xff08;也被称为 汉明重量).&#xff09;。 提示&#xff1a; …...

【Gitee的使用】Gitee的简单使用,查看/创建SSH公匙、创建版本库、拉取代码、提交代码

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好&#xff0c;我是佛系工程师☆恬静的小魔龙☆&#xff0c;不定时更新Unity开发技巧&#xff0c;觉得有用记得一键三连哦。 一、前言 本篇文章简单介绍&#xff0c;如何在Gitee上面创建版本库、拉取…...

Java 跨平台多媒体处理样例

代码 import cn.hutool.core.exceptions.ExceptionUtil; import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.CharsetUtil; import lombok.extern.slf4j.Slf4j; import ws.schild.jave.Encoder; import ws.schild.jave.Multime…...

cmake基础(3)——安装

一、简介 install命令用于指定安装时的规则&#xff0c;由于安装命令比较复杂&#xff0c;这里做一部分内容的介绍&#xff0c;后续用到再继续完善。 1.命令简介 本文档基于3.20&#xff0c;目前有6种安装方式。 install(TARGETS <target>... [...]) install({FILES …...

​LeetCode解法汇总1572. 矩阵对角线元素的和

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 描述&#xff1a; 给你一个正…...

BFC(Block formatting context 块级格式化上下文)

1、开启了BFC能解决什么问题&#xff1f; 给父元素开启BFC&#xff0c;其子元素不会再产生 margin 塌陷问题。自己不会被其他浮动元素所覆盖。就算其子元素浮动&#xff0c;元素自身高度也不会塌陷。 2、如何开启&#xff1f; 根元素浮动元素绝对定位、固定定位的元素行内块…...

Leetcode-每日一题【剑指 Offer 14- II. 剪绳子 II】

题目 2、3、3的三段&#xff0c;此时得到的最大乘积是18。 答案需要取模 1e97&#xff08;1000000007&#xff09;&#xff0c;如计算初始结果为&#xff1a;1000000008&#xff0c;请返回 1。 示例 1&#xff1a; 输入: 2输出: 1解释: 2 1 1, 1 1 1 示例 2: 输入: 10输出…...

bye 我的博客网站

Bye&#x1f64b;&#x1f64b;&#x1f64b;&#xff0c;我的博客网站。在我的服务器上运行了9个月之久的博客网站要和大家Bye了。 背景 可能很多人不知道我的这个博客网站的存在&#xff0c;好吧&#xff0c;最后一次展示它了&#xff0c;博客网站地址在这里&#xff0c;它…...

Llama 2:开放基础和微调聊天模型

介绍 大型语言模型(llm)作为高能力的人工智能助手,在复杂的推理任务中表现出色,这些任务需要广泛领域的专家知识,包括编程和创意写作等专业领域。它们可以通过直观的聊天界面与人类进行交互,这在公众中得到了迅速而广泛的采用。 法学硕士的能力是显著的考虑到训练的表面上…...

JVM工作的总体机制概述

JDK、JRE、JVM关系回顾 JVM&#xff1a;Java Virtual Machine&#xff0c;翻译过来是Java虚拟机JRE&#xff1a;Java Runtime Environment&#xff0c;翻译过来是Java运行时环境 JREJVMJava程序运行时所需要的类库JDK&#xff1a;Java Development Kits&#xff0c;翻译过来是…...

jmeter工具测试和压测websocket协议【杭州多测师_王sir】

一、安装JDK配置好环境变量&#xff0c;安装好jmeter 二、下载WebSocketSampler发送请求用的&#xff0c;地址&#xff1a;https://bitbucket.org/pjtr/jmeter-websocket-samplers/downloads/?spma2c4g.11186623.2.15.363f211bH03KeI 下载解压后的jar包放到D:\JMeter\apache-j…...

国产漏洞扫描器Xray入门,详细教程

国产漏洞扫描器Xray入门,详细教程 1.Xray简介2.快速开始3.使用 xray 代理模式进行漏洞扫描4.使用 xray 基础爬虫模式进行漏洞扫描5.使用 xray 进行服务扫描1.Xray简介 xray 是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,主要特性有: 检测速度…...

LeetCode209. 长度最小的子数组

题目&#xff1a;LeetCode209. 长度最小的子数组 描述&#xff1a; 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, …, numsr-1, numsr] &#xff0c;并返回其长度。如果不存在符合条件的子…...

css冒号对齐

实现后的样式效果 实现方式 html&#xff1a; <el-col v-if"item.showInSingle ! false" :span"6" style"padding: 4px 0"><label>{{ item.label }}&#xff1a;</label><span v-if"singleData[item.prop] ! 0 &…...

那些年的golang开发经验记录

goland 问题CreateProcess error216, 该版本的 %1 与你运行的 Windows 版本不兼容。请查看计算机的系统信息&#xff0c;然后联系软件发布者 Cannot run program "......" (in directory "D:\project\go\awesomeProject\src\test"): CreateProcess error2…...

element中select下拉框如何实现宽度自适应

简单暴力&#xff1a; element 和 elementPlus 都可以直接在el-select上添加 style"width: 100%" 解决 <el-select style"width: 100%" v-model"cats" multiple filterable placeholder"请选择分类"> . . . </el-select&…...

springboot项目get请求下划线转驼峰@JsonProperty注解失效问题

问题&#xff1a;解决sprigboot项目get请求中有下划线的入参参数&#xff0c;如&#xff1a;first_name&#xff0c;希望在项目中将下划线格式转成firstName&#xff0c;用JsonProperty注解发现失效问题 1.核查&#xff1a;JsonProperty注解对应包是否正确 正确包&#xff1a…...

BilibiliDown:三步快速掌握B站视频下载的完整指南

BilibiliDown&#xff1a;三步快速掌握B站视频下载的完整指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/gh_mirrors/bi/Bi…...

淘金币自动化脚本:每天5分钟轻松赚取淘宝金币的终极指南

淘金币自动化脚本&#xff1a;每天5分钟轻松赚取淘宝金币的终极指南 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 还…...

Unity AI抄近道与翻墙:OffMeshLink组件从入门到精通(含Bi-Directional、Cost Override设置)

Unity导航系统进阶&#xff1a;OffMeshLink组件在关卡设计中的高阶应用 想象一下&#xff0c;你正在设计一个充满机关与陷阱的古墓探险关卡。玩家控制的角色需要在悬崖间跳跃、攀爬藤蔓、穿越单向闸门——但更令人头疼的是&#xff0c;那些AI守卫也需要智能地追踪玩家。如何让A…...

如何高效下载B站8K超清视频:哔哩下载姬实用技巧指南

如何高效下载B站8K超清视频&#xff1a;哔哩下载姬实用技巧指南 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、去水印等&#xf…...

抖音下载器终极指南:免费批量下载视频音乐,告别手动保存烦恼

抖音下载器终极指南&#xff1a;免费批量下载视频音乐&#xff0c;告别手动保存烦恼 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and brows…...

Cursor Free VIP破解工具终极指南:三步骤永久免费使用Cursor Pro功能

Cursor Free VIP破解工具终极指南&#xff1a;三步骤永久免费使用Cursor Pro功能 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve re…...

PowerShell ImportExcel模块终极指南:无需Excel的完整数据处理解决方案

PowerShell ImportExcel模块终极指南&#xff1a;无需Excel的完整数据处理解决方案 【免费下载链接】ImportExcel PowerShell module to import/export Excel spreadsheets, without Excel 项目地址: https://gitcode.com/gh_mirrors/im/ImportExcel 还在为Excel自动化而…...

别再死记硬背4R理论了!用小米、Target和电商的真实案例,手把手教你落地客户关系管理

4R理论实战手册&#xff1a;用小米、Target和电商案例解锁客户关系管理 记得去年双十一&#xff0c;一位做电商的朋友向我抱怨&#xff1a;"学了那么多营销理论&#xff0c;一到实战就抓瞎。"这让我想起第一次接触4R理论时的困惑——那些抽象的概念就像隔着一层毛玻璃…...

WinUtil:5分钟快速上手的Windows系统优化终极指南,免费开源让你的电脑飞起来!

WinUtil&#xff1a;5分钟快速上手的Windows系统优化终极指南&#xff0c;免费开源让你的电脑飞起来&#xff01; 【免费下载链接】winutil Chris Titus Techs Windows Utility - Install Programs, Tweaks, Fixes, and Updates 项目地址: https://gitcode.com/GitHub_Trendi…...

Windows驱动清理终极指南:5分钟学会DriverStore Explorer专业管理

Windows驱动清理终极指南&#xff1a;5分钟学会DriverStore Explorer专业管理 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 你是否曾发现Windows系统盘空间莫名其妙地减少&#xff1f…...