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

珠海中国建设银行招聘信息网站盐城seo培训

珠海中国建设银行招聘信息网站,盐城seo培训,凡科做商品网站的教学视频,个人接单做网站挣钱不6.4.1 控制器父类用哪个 6.2小节和6.3小节所演示的ASP.NET Core Web API 的控制器类都继承自ControllerBase,而6.1中MVC的控制器继承自Controller,Controller又继承自ControllerBase。 所以,一般情况下,编写的WebAPI控制器类继承…

 6.4.1 控制器父类用哪个

6.2小节和6.3小节所演示的ASP.NET Core Web API 的控制器类都继承自ControllerBase,而6.1中MVC的控制器继承自Controller,Controller又继承自ControllerBase。

所以,一般情况下,编写的WebAPI控制器类继承自ControllerBase即可,当然也可以不继承任何类,例如:

6.4.2 操作方法的异步、返回值、状态码

1. 异步及返回值

IActionResult返回值:

添加一个Hello控制器并编写操作方法,并且在返回404异常码时添加异常原因

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.ComponentModel.Design.Serialization;namespace WebApplicationTest.Controllers
{[Route("api/[controller]")][ApiController]public class HelloController : ControllerBase{[HttpGet]public IActionResult GetOrder(int id){if (id==1){return Ok(100);}else if (id==2){return Ok(200);}else{return NotFound("id错误");}}}
}

启动调试

异常:

由于IActionResult不包含返回值的类型信息,Swagger无法从操作方法中获取返回数据的类型信息,所以ASP.Net Core中提供了一个泛型ActionResult<T>

ActionResult<T>作为返回值,新增操作方法:

 [HttpGet("{id}")]public ActionResult<Person> GetOrderFX(int id){if (id == 1){return new Person("枸杞泡茶", 18);}else if (id == 2){return new Person("牧羊人", 27);}else{return NotFound("id错误");}}

启动调试:

2. 异常响应码及统一响应体

一般在项目开发中,需要统一响应报文体的格式,以便客户端进行错误处理。例如此处声明一个ErrorInfo类表示错误详情:

namespace WebApplicationTest
{public record ErrorInfo(int ErrorCode ,string ?Message);
}

改造【GetOrderFX】方法:

 [HttpGet("{id}")]public ActionResult<Person> GetOrderFX(int id){if (id<=0){return BadRequest(new ErrorInfo(100, "id需为正数!"));}else if (id == 1){return new Person("枸杞泡茶", 18);}else if (id == 2){return new Person("牧羊人", 27);}else{return NotFound(new ErrorInfo(100,"人员不存在!"));}}

启动调试

6.4.3 操作方法的参数从哪里来

给服务端WebAPI传参时,有URL、QueryString,请求报文体,三种

1. 从URL获取

例如新增一个控制器

 [HttpGet("N1/{number1}/N2/{number2}")]public int  Add(int number1,int number2){return number1+number2;}

启动调试

2. QueryString

对于通过QueryString传递的参数,使用 [FromQuery]获取值

编写一个控制方法:

[HttpPost]
public int AddQueryString([FromQuery]int number1, [FromQuery] int number2)
{return number1 + number2;
}

启动调试:

调试结果查看,默认的方式其实就是QueryString方式,如果需要显式设置:

 [HttpPost]public int AddQueryString([FromQuery]int number1, [FromQuery] int number2){return number1 + number2;}
3. 请求报文体

新增一个操作

[HttpPost]
public string AddUser(Person ppp1)
{return "保存成功!"+ppp1.Name +",Age:"+ppp1 .Age;
}

启动调试

Json请求报文体

响应:

当然,这几种方式也可以混用:

[HttpPut("{Name}")]
public string AddUser1(string Name, Person ppp1)
{return "保存成功!" + ppp1.Name + ",Age:" + ppp1.Age+","+Name;
}

启动调试

响应

http://www.dtcms.com/wzjs/471826.html

相关文章:

  • 浙江省城乡与住房建设部网站站内推广方案
  • p2p网站建设教程新媒体营销策略
  • 网站类型定义全球最大的磁力搜索引擎
  • 虎门英文网站建设seo怎么推广
  • 苏州哪个公司做门户网站抖音关键词排名
  • 开一个网站建设公司什么是网店推广
  • 长沙好的网站建设公司哪家好小广告公司如何起步
  • 威海设计网站的网站建设是什么工作
  • 口碑好的网站建设加工即刻搜索引擎入口
  • 吉安网站开发广西壮族自治区
  • seo少女找seo外包公司需要注意什么
  • 贵州企业网站建设设计线上推广100种方式
  • 推广型网站如何建站外包公司软件开发
  • 做网站seo优化服务营销的七个要素
  • 自己怎么做外贸英文网站网络推广怎么做
  • 高古楼网站找活做查询seo
  • 怎么利用网站上的图片重庆森林粤语完整版在线观看免费
  • seo网站提交提交百度推广开户费用标准
  • 做的网站有广告泸州网站优化推广
  • 深圳美容网站建企业seo网络营销
  • 最好的餐饮设计网站建设如何注册域名
  • 网站建设赚钱百度推广费用怎么算
  • 百度优化只做移动网站没有pc站抖音广告推广
  • 黔南seo衡水seo培训
  • 酒店网站设计的毕业论文网站制作专业
  • 舟山高端网站设计阜新网络推广
  • 萍乡海绵城市建设官方网站网络营销有什么特点
  • aspcms分类信息网站计算机培训
  • 建设网站用什么时候开始域名注册人查询
  • 汕头网页网站制作免费的关键词优化工具