多个查询字符串参数应该如何在 swagger 中呈现?
How should mulitiple query string parameters be presented in swaggers?
我希望 api 能够接受多个查询字符串,例如:
GET /{id}?expand=property1,property2
我将 api 定义为:
public Task<IActionResult> GetAsync([FromRoute] string id, [FromQuery] Expandable expand)
Flag Enum Epandable 定义为:
[Flags]
[JsonConverter(typeof(StringEnumConverter))]
public enum Expandable
{
None = 0x0,
Property1= 0x1,
Property2 = 0x2,
Property3 = 0x3
}
参数 "expand" 的 swagger 生成为
{
"name": "$expand",
"in": "query",
"description": "",
"required": true,
"type": "string",
"default": "None",
"enum": [
"none",
"property1",
"property2",
"property3"
]
},
但是有了这个 swagger,auto-gen 客户端接受一个字符串,我不确定应该如何呈现 swagger 以便自动生成的客户端也接受一个 Flag Enum?
你应该制作 expand
参数 Expandable[]
并且你的标志声明不正确 What does the [Flags] Enum Attribute mean in C#?
我希望 api 能够接受多个查询字符串,例如:
GET /{id}?expand=property1,property2
我将 api 定义为:
public Task<IActionResult> GetAsync([FromRoute] string id, [FromQuery] Expandable expand)
Flag Enum Epandable 定义为:
[Flags]
[JsonConverter(typeof(StringEnumConverter))]
public enum Expandable
{
None = 0x0,
Property1= 0x1,
Property2 = 0x2,
Property3 = 0x3
}
参数 "expand" 的 swagger 生成为
{
"name": "$expand",
"in": "query",
"description": "",
"required": true,
"type": "string",
"default": "None",
"enum": [
"none",
"property1",
"property2",
"property3"
]
},
但是有了这个 swagger,auto-gen 客户端接受一个字符串,我不确定应该如何呈现 swagger 以便自动生成的客户端也接受一个 Flag Enum?
你应该制作 expand
参数 Expandable[]
并且你的标志声明不正确 What does the [Flags] Enum Attribute mean in C#?