asp.net-web-api2 – Swagger中的数据注释

我正在使用ASP.NET和Swagger公开一个接受POST的复杂类型.它有许多具有不同限制长度的字符串字段.我怎样才能在Swagger UI中反映出来?

解决方法

您可以使用System.ComponentModel.DataAnnotations中的StringLengthAttribute注释属性.

例如:

[StringLength(10)]
public String Name {get;set;}

会变成:

"name": {
    "minLength": 0,"maxLength": 10,"type": "string"
}

和这个:

[StringLength(10,MinimumLength = 5)]
public String Name {get;set;}

变为:

"name": {
    "minLength": 5,"type": "string"
}

除StringLength外,Swashbuckle还支持Range和RegularExpression属性.

更新

MaxLength不起作用. StringLength.但是,在Swagger UI中发现这些信息有点笨拙.您必须导航到对象的模型,然后将鼠标悬停在属性上:

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....