微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ASP.NET Core – Swagger

前言

Swagger (OpenAPI) 是一套 Web API 文档规范. 

ASP.NET Core 有 2 个 Library 可以帮我们从 Web API Controller convert to 文档哦

一个是 Swashbuckle

一个是 NSwag

NSwag 还能直接生产 client code 比如 typescript 等等哦. 但我是没有这个需求啦, 所以我用 Swashbuckle

 

主要参考

Get started with Swashbuckle and ASP.NET Core

Controller action return types in ASP.NET Core web API

 

安装 nuget

dotnet add package Swashbuckle.AspNetCore

 ASP.NET Core 6.0 模板已经有自带的了.

跑起来长这样

 

 

配置 docs

services.AddSwaggerGen(options =>
{
    options.SwaggerDoc("v1.0", new OpenApiInfo
    {
        Title = "Project Web API",
        Version = "v1.0",
        Description = "Project Web API version 1.0",
        Contact = new OpenApiContact
        {
            Name = "Derrick Yam",
            Email = "[email protected]",
        },
    });
});

UI Endpoint

app.UseSwaggerUI(options =>
{
    options.SwaggerEndpoint("/swagger/v1.0/swagger.json", "Project Web API v1.0");
    options.DocExpansion(DocExpansion.None);
});

 

开启 XML comments

打开 project.csproj, 添加 2 行, Nowarn 是去掉警告, 不然很烦.

<PropertyGroup>
  <GenerateDocumentationFile>true</GenerateDocumentationFile>
  <Nowarn>$(Nowarn);1591</Nowarn>
</PropertyGroup>

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐