1

我有一个用于指定具有必需参数 userName 的方法的服务的 swagger json 文件。但是,Autorest 会生成一个扩展方法,此参数是可选的。这会导致最终用户感到困惑,因为他们可以调用该方法而不提供任何肯定会失败的东西。

Autorest 生成:

public static object GetUserGet(this XyzService operations, string userName = default(string))

我希望它生成:

public static object GetUserGet(this XyzService operations, string userName)
4

1 回答 1

0

修改你的 swagger json 设置有问题的参数"required": true 应该可以解决你的问题。

这是一个例子:

    "paths": {
    "/api/Search": {
        "get": {
            "tags": [ "Search" ],
            "summary": "Get all cars in a given location",
            "operationId": "Search_GetByLocation",
            "consumes": [],
            "produces": [ "application/json", "text/json", "text/html" ],
            "parameters": [
                {
                    "name": "location",
                    "in": "query",
                    "description": "SoFL= 26.16,-80.20",
                    "required": true,
                    "type": "string"
                },
                {
                    "name": "make",
                    "in": "query",
                    "description": "Car make",
                    "required": false,
                    "type": "string"
                }
            ],
            "responses":{ }
        }
    },
    "/api/Stats": {}
},

该示例来自此 API: http ://turoapi.azurewebsites.net/swagger/docs/V1

于 2017-08-04T18:41:10.240 回答