前言: 微软于前天发布. net core 3.1 正式版, 并将长期支持 3.1. 所以我听到这个消息后就急忙下载. net core 3.1 的 SDK 和 Runtime, 应该是公司最先用 3.1 的攻城狮了.
OK! 废话少说, 今天的目的是基于. net core 3.1 建一个 web API 的项目
先下载. net core 3.1 的 SDK(开发. net core 项目时会用到) 和 Runtime(用来运行. net core 的应用程序)
地址:
创建 ASP.NET Core Web 项目 ps: 不要选错了
这里说一下项目目录下的各个文件的作用
引入 Swashbuckle.AspNetCore 程序包
执行以下命令
Install-Package Swashbuckle.AspNetCore -Version 5.0.0-rc4
添加 并配置 Swagger 中间件
- services.AddSwaggerGen(c =>
- {
- c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
- });
- App.UseSwagger();
- App.UseSwaggerUI(c =>
- {
- c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
- });
现在添加一个控制器, 写一个接口看看能不能出来
地址栏改一下
swagger/index.html
如果对接口做了 xml 注释, 要在 Startup 添加如下代码, 才可以显示出来
先引入 NuGet 包: Microsoft.Extensions.PlatformAbstractions
然后右键属性
再在 Startup 中添加下面的代码
- var basePath = PlatformServices.Default.Application.ApplicationBasePath;
- //Core.Admin.webapi.xml 是我的项目生成 xml 文档的后缀名, 具体的以你项目为主
- var xmlPath = Path.Combine(basePath, "Core.Admin.webapi.xml");
- c.IncludeXmlComments(xmlPath);
运行项目, 注释已经出来了
在 launchSettings.JSON 中更改一下 launchUrl 这个环境变量, 这样就不用每次都改地址栏了
最后附上微软官方教程地址
https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view=aspnetcore-3.1&tabs=visual-studio
来源: https://www.cnblogs.com/zhangnever/p/11915509.html