您现在的位置是:网站首页> 编程资料编程资料
Asp.Net Core使用swagger生成api文档的完整步骤_实用技巧_
2023-05-24
520人已围观
简介 Asp.Net Core使用swagger生成api文档的完整步骤_实用技巧_
前言
.Net Core中有两个集成NSwag的包,分别为Swashbuckle和NSwag。两者的配置大同小异。这里以NSwag为例。
一、前期准备
1、初始化asp.net core 测试项目
新建asp.net core项目,此处略过;
新建apicontroller,并编写测试代码;
[Route("api/[controller]")] [ApiController] public class UserApiController : ControllerBase { /// /// 获取用户信息,根据用户id /// /// 用户id /// [HttpGet("getuser/{id}")] public ActionResult GetUser(int id) { User u = new User { Id=1,Name="Jack"}; return Ok(new { ok = true, data = u }); } /// /// 添加用户 /// /// 用户信息 /// [HttpPost("postuser")] public ActionResult AddUser([FromBody]User user) { return Ok(new { ok = true, data = user }); } } public class User { /// /// 用户id /// public int Id { get; set; } /// /// 用户姓名 /// public string Name { get; set; } }2、使用nuget安装 NSwag.AspNetCore
方式一:通过vs图形界面安装;

方式二:通过nuget 命令安装:
Install-Package NSwag.AspNetCore

二、配置Swagger
1、添加并配置 Swagger 中间件
在应用的Startup类中的ConfigureServices 方法中,注册所需的 Swagger 服务:
public void ConfigureServices(IServiceCollection services) { services.AddControllersWithViews(); // Register the Swagger services services.AddSwaggerDocument() }在 Startup类中的Configure 方法中,启用中间件为生成的 Swagger 规范和 Swagger UI 提供服务:
public void Configure(IApplicationBuilder app) { app.UseStaticFiles(); // Register the Swagger generator and the Swagger UI middlewares app.UseOpenApi(); app.UseSwaggerUi3(); app.UseMvc(); }启动应用。 转到:
http://localhost:/swagger,以查看 Swagger UI。
http://localhost:/swagger/v1/swagger.json,以查看 Swagger 规范。

2、自定义 API 文档
API 信息和说明
在 Startup.ConfigureServices 方法中,传递给 AddSwaggerDocument 方法的配置操作会添加诸如作者、许可证和说明的信息:
public void ConfigureServices(IServiceCollection services) { //services.AddControllers(); services.AddControllersWithViews(); services.AddSwaggerDocument(config => { config.PostProcess = document => { document.Info.Version = "v1"; document.Info.Title = "UserManageApp API"; document.Info.Description = "A simple ASP.NET Core web API"; document.Info.TermsOfService = "None"; document.Info.Contact = new NSwag.OpenApiContact { Name = "张三", Email = string.Empty, Url = "https://example.com" }; document.Info.License = new NSwag.OpenApiLicense { Name = "Use under LICX", Url = "https://example.com/license" }; }; }); }Swagger UI 显示版本的信息:

XML 注释
若要启用 XML 注释,请执行以下步骤:
以windows先使用vs为例:
- 在“解决方案资源管理器”中右键单击该项目,然后选择“编辑 .csproj” 。
- 手动将突出显示的行添加到 .csproj 文件 :

三、参考
https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-nswag?view=aspnetcore-3.0&tabs=visual-studio
*以上讲解知识入门级的,能大体使用起来,能满足一般性需求;
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
- ASP.NET Core中使用Swagger
- .NetCore使用Swagger+API多版本控制的流程分析
- asp.net core 集成swagger ui的原理解析
- ASP.NetCore使用Swagger实战
- asp.net core 3.0中使用swagger的方法与问题
- Asp.Net Core WebAPI使用Swagger时API隐藏和分组详解
- 记Asp.Net Core Swagger使用并带域接口处理的方法
- .NET Core利用swagger进行API接口文档管理的方法详解
- Asp.net core WebApi 使用Swagger生成帮助页实例
- ASP.NET Core使用Swagger/OpenAPI规范
相关内容
- 浅谈MVC框架的优点(翻译)_实用技巧_
- asp.net利用ashx文件实现文件的上传功能_实用技巧_
- VS2019下opencv4.1.2配置图文教程(永久配置)_实用技巧_
- VS2019以及MFC的安装详细教程_实用技巧_
- .NET core 3.0如何使用Jwt保护api详解_实用技巧_
- .Net Core读取Json配置文件的实现示例_实用技巧_
- .NET资源泄露与处理方案知识点分享_实用技巧_
- NetCore 3.0文件上传和大文件上传的限制详解_实用技巧_
- DataGridView使用自定义控件实现简单分页功能(推荐)_实用技巧_
- DataGridView使用BindingNavigator实现简单分页功能_实用技巧_
