POSTを受け入れる複合型を公開するASP.NETとSwaggerを使用しています。制限された長さが異なる多数の文字列フィールドがあります。それをSwaggerUIに反映するにはどうすればよいですか?
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,
"maxLength": 10,
"type": "string"
}
StringLength
の他に、SwashbuckleはRange
およびRegularExpression
属性もサポートします。
更新
MaxLength
は機能しません。 StringLength
はそうです。ただし、SwaggerUIでこの情報を見つけるのは少し不器用です。オブジェクトのModel
に移動してから、プロパティにカーソルを合わせる必要があります。