RicoSuter/NSwag

need to remove/replace some more characters that are invalid for C# method names when using operationId and path segments

Open

#3,398 建立於 2021年4月7日

在 GitHub 查看
 (3 留言) (0 反應) (0 負責人)C# (6,291 star) (1,189 fork)batch import
help wantedproject: NSwag.CodeGeneration.CSharp (Clients)

描述

I have a swagger 2.0 file that uses a query parameter in the path and has an operationId that contains a $

This is hitting VMware's vCenter

    "/rest/vcenter/vcha/cluster/mode?vmw-task=true": {
        "put": {
            [... extra deleted ...]
            "operationId": "set$task"
        }
    },

when using SingleClientFromPathSegments, the method name generated is "RestVcenterVchaClusterMode?vmwTask=trueAsync" which is invalid (? and = need to be removed or replaced AFAICT?)

when using SingleClientFromOperationId, the method name generated is "Set$taskAsync" which is invalid ($ needs to be removed or replaced AFAICT?)

Hopefully filtering out characters that are invalid C# would do the trick?

貢獻者指南