.Net Core Swagger 给类库模型添加注解

Posted zhihang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net Core Swagger 给类库模型添加注解相关的知识,希望对你有一定的参考价值。

因为公司流程的需要,需要给每个API的Request 和Response 模型及属性加上注解,发现Api项目依赖的Model 类库中的/// Summy的注解并没有作用。

通过翻资料和实践。发现借助 Swashbuckle.AspNetCore.Annotations 包可以实现。

步骤:

  1. 在模型字段加上 [SwaggerSchema("UserId", ReadOnly = true)] 属性标签
  2. 在StartUp.cs 的 service 中注册 

    services.AddSwaggerGen(c =>
    {
    c.SwaggerDoc("v1", new OpenApiInfo { Title = "Swagger API V1", Version = "v1" });
    c.SwaggerDoc("v2", new OpenApiInfo { Title = "Swagger API V2", Version = "v2" });
    var filePath = Path.Combine(System.AppContext.BaseDirectory, "Swagger.xml");
    c.IncludeXmlComments(filePath);
    c.EnableAnnotations();
    });

效果

技术图片

 

 

在引用这个包的时候,有部分依赖包存在版本兼容问题。

可以参考原项目:https://github.com/domaindrivendev/Swashbuckle.AspNetCore

 








以上是关于.Net Core Swagger 给类库模型添加注解的主要内容,如果未能解决你的问题,请参考以下文章

在.net core web api中添加自定义属性到OpenAPI规范文件和swagger

将数据库模型放入到.Net Core的类库中

.NET Core基础篇之:集成Swagger文档与自定义Swagger UI

使用 .NET Core 3.0 进行 JWT 身份验证和 Swagger

ASP .NET Core从零到壹 || Swagger配置

ASP.NET Core 同时支持多种认证方式 | Swagger 支持