Asp.net-Web-Api2

Swagger 中的數據註釋

  • February 23, 2016

我正在使用 ASP.NET 和 Swagger,它們公開了一個接受 POST 的複雜類型。它有許多具有不同限制長度的字元串欄位。如何在 Swagger UI 中反映這一點?

StringLengthAttribute您可以使用from註釋屬性System.ComponentModel.DataAnnotations

例如:

[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"
}

除了StringLengthSwashbuckle 還支持RangeRegularExpression屬性。

更新

MaxLength不起作用。StringLength做。但是,在 Swagger UI 中發現這些資訊有點笨拙。您必須導航到Model您的對象,然後將滑鼠懸停在該屬性上:

如何發現最大長度資訊

引用自:https://stackoverflow.com/questions/35580517