.Net Core Swagger 给类库模型添加注解
Posted zhihang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net Core Swagger 给类库模型添加注解相关的知识,希望对你有一定的参考价值。
因为公司流程的需要,需要给每个API的Request 和Response 模型及属性加上注解,发现Api项目依赖的Model 类库中的/// Summy的注解并没有作用。
通过翻资料和实践。发现借助 Swashbuckle.AspNetCore.Annotations 包可以实现。
步骤:
- 在模型字段加上 [SwaggerSchema("UserId", ReadOnly = true)] 属性标签
- 在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基础篇之:集成Swagger文档与自定义Swagger UI
使用 .NET Core 3.0 进行 JWT 身份验证和 Swagger