You can annotate the properties with the StringLengthAttribute
from System.ComponentModel.DataAnnotations
.
For instance:
[StringLength(10)]
public String Name {get;set;}
will become:
"name": {
"minLength": 0,
"maxLength": 10,
"type": "string"
}
And this:
[StringLength(10, MinimumLength = 5)]
public String Name {get;set;}
becomes:
"name": {
"minLength": 5,
"maxLength": 10,
"type": "string"
}
Besides StringLength
Swashbuckle also supports the Range
and RegularExpression
attributes.
Update
MaxLength
does not work. StringLength
does. However, discovering this information in Swagger UI is a bit clumsy. You have to navigate to the Model
of your object and then hover over the property:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…