.Net Core WebApi的简单创建以及使用方法

按照目前的软件开发发展趋势中,不管是前后端分离还是提供数据服务,WebApi使用的越来越广泛,而且.NET Core也是我们.NET开发人员未来发展的趋势,所以说学会使用.NET Core Api是非常有必要的。

本人作为一个.NET菜鸟,正在慢慢的学习中,将学到的一步一步记录下来。

一、创建项目

打开VS2019,新建一个ASP.NET Core Web 应用程序。

.Net Core WebApi的简单创建以及使用方法

输入项目名、选择路径创建。

.Net Core WebApi的简单创建以及使用方法

选择.NET Core 我这里用的是.NET Core 2.2版本,选中API,把右边的选中取消。

.Net Core WebApi的简单创建以及使用方法

创建的项目目录内容如下。

.Net Core WebApi的简单创建以及使用方法

二、编辑控制器

打开Controllers文件夹,这里我直接使用默认创建的ValuesController控制器。(其实是因为这是个例子我懒的再建了( ̄. ̄))

.Net Core WebApi的简单创建以及使用方法

ValuesController控制器默认内容如下。共有四个HTTP方法,分别为 Get、Post、Put 和 Delete。

.Net Core WebApi的简单创建以及使用方法

把该控制器的内容重新写一下,将路由设置为api/控制器/方法(api/[controller]/[action])。按照常用Get 和 Post两个请求,写了两个Get方法和一个Post方法,一个参数类。

using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; namespace FirstApi.Controllers { //路由设置 [Route("api/[controller]/[action]")] [ApiController] public class ValuesController : ControllerBase { /// <summary> /// 获取文本 /// </summary> /// <returns></returns> [HttpGet] public ActionResult<string> Get() { return "Hello World!"; } /// <summary> /// 两数相加 /// </summary> /// <param>第一个数</param> /// <param>第二个数</param> /// <returns></returns> [HttpGet] public ActionResult<int> Sum(int num1,int num2) { return num1 + num2; } /// <summary> /// 两数相减 /// </summary> /// <param>参数</param> /// <returns></returns> [HttpPost] public ActionResult<int> Subtract(Param param) { int result = param.num1 - param.num2; return result; } } /// <summary> /// 参数 /// </summary> public class Param { /// <summary> /// 第一个数 /// </summary> public int num1 { get; set; } /// <summary> /// 第二个数 /// </summary> public int num2 { get; set; } } }

然后右键项目→属性→调试,将启动浏览器默认指向为第一个Get方法。

.Net Core WebApi的简单创建以及使用方法

.Net Core WebApi的简单创建以及使用方法

调试运行,访问第一个方法,返回结果。

.Net Core WebApi的简单创建以及使用方法

访问第二个方法加上参数,得到结果。

.Net Core WebApi的简单创建以及使用方法

第三个方法是Post请求,无法直接输入,可以用其他方式实现。

三、搭建Swagger

这样WebApi 就简单实现了,不过这样不容易管理。为了更好的管理和测试我们的接口,我这里使用了Swagger框架。

Swagger是什么?Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的 Web 服务。

右键项目,点击管理NuGet程序包。

.Net Core WebApi的简单创建以及使用方法

切换到浏览,搜索“Swashbuckle.AspNetCore”,安装。

.Net Core WebApi的简单创建以及使用方法

安装完成之后,编辑Startup.cs文件。

.Net Core WebApi的简单创建以及使用方法

引用下面三个命名空间。

using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; namespace FirstApi.Controllers { //路由设置 [Route("api/[controller]/[action]")] [ApiController] public class ValuesController : ControllerBase { /// <summary> /// 获取文本 /// </summary> /// <returns></returns> [HttpGet] public ActionResult<string> Get() { return "Hello World!"; } /// <summary> /// 两数相加 /// </summary> /// <param>第一个数</param> /// <param>第二个数</param> /// <returns></returns> [HttpGet] public ActionResult<int> Sum(int num1,int num2) { return num1 + num2; } /// <summary> /// 两数相减 /// </summary> /// <param>参数</param> /// <returns></returns> [HttpPost] public ActionResult<int> Subtract(Param param) { int result = param.num1 - param.num2; return result; } } /// <summary> /// 参数 /// </summary> public class Param { /// <summary> /// 第一个数 /// </summary> public int num1 { get; set; } /// <summary> /// 第二个数 /// </summary> public int num2 { get; set; } } }

在ConfigureServices方法里加入下面的代码,注册Swagger生成器,定义一个文档,设置xml文档的注释路径,。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdsysp.html