……

入坑.net core(二)新建一个.net core api

我这用的是.net core 3.1,没有可点击https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral下载

 

 

 

屁话不多少,先打开VS2019,创建一个API

 

配置一下项目

 

 

 

 

 

 

好现在我们.net core 3.1 Api项目就创建成功了,接下来看配置

 

 

 

先配置:swagger             Swashbuckle.AspNetCore程序包

项目右击,管理NuGet程序包

 

 

 再配置:Startup.cs文件

 

Swagger中间件

ConfigureServices下加:

  services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
             
            });

Configure下加

 app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
            });

如下图

 

 

 

现在加一个控制器,看一下swagger接口

  //路由设置
    [Route("api/[controller]/[action]")]
    [ApiController]
    public class HomeController : ControllerBase
    {
        /// <summary>
        /// 获取文本
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public ActionResult<string> Get()
        {
            return "Hello World!";
        }
        /// <summary>
        /// 两数相加
        /// </summary>
        /// <param name="num1">第一个数</param>
        /// <param name="num2">第二个数</param>
        /// <returns></returns>
        [HttpGet]
        public ActionResult<int> Sum(int num1, int num2)
        {
            return num1 + num2;
        }
        /// <summary>
        /// 两数相减
        /// </summary>
        /// <param name="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; }
    }

如下图

 

 

现在运行看下效果

路径改为:swagger/index.html

 

 接着再配置xml注释

先引入NuGet包:Microsoft.Extensions.PlatformAbstractions

如下图

 

 继续右键:属性

 

 

继续在Startup文件下配置如下代码

 #region 
                var basePath = PlatformServices.Default.Application.ApplicationBasePath;
                //var basePath = AppDomain.CurrentDomain.BaseDirectory;
                //Core.Admin.webapi.xml是我的项目生成XML文档的后缀名,具体的以你项目为主
                var xmlPath = Path.Combine(basePath, "FirstApi.xml"); 
                //第二个参数为true的话则控制器上的注释也会显示(默认false)
                c.IncludeXmlComments(xmlPath, true);
                #endregion

如下图

 

 

 

 

可能会出问题的是xml路径没有配置正确

此路径为 basepath根目录下xml路径

 

 配置好注释xml运行一下api

 

 

 现在注释就出来了。

就这么多了,每天成长一点点。加油。

 

posted @ 2022-03-19 19:04  蟾宝  阅读(1429)  评论(0编辑  收藏  举报