使用Autorest生成API的客户端无法识别API中使用的模型或实体

时间:2018-09-17 09:43:38

标签: c# swagger autorest

我的解决方案中有三个项目,一个包含API控制器类,另一个包含所有实体,模型和Db类,而另一个则是我使用autorest和swagger JSon为我的API生成客户端的项目。我的客户项目中引用了模型/实体项目。 我正在使用以下脚本来生成客户端:

@echo off

IF "x%1"=="x" GOTO :usage

..\..\packages\autorest.0.17.3\tools\AutoRest -Namespace MyClient -ClientName MyApi -AddCredentials true -Header NONE -CodeGenerator Azure.CSharp -Input %1
GOTO :exit

:usage
echo Usage: GenClient ^<swagger.json^>

:exit

swagger.json文件具有如下对象:

MyNamespace.MyUser": {
      "type": "object",
      "properties": {
        "Company": {
          "maxLength": 100,
          "minLength": 0,
          "type": "string"
        },
        "CountryName": {
          "maxLength": 100,
          "minLength": 0,
          "type": "string"
        },
        "RegionName": {
          "maxLength": 100,
          "minLength": 0,
          "type": "string"
        },
      },
      "x-ms-external": true
    }

我面临的问题是,每次使用此命令生成客户端时,都必须为所有模型/实体名称空间显式添加“ using”语句。例如在这里创建的所有三个文件(UserOperationsExtensions,UserOperations,IUserOperations)中。我必须去添加'using MyNamespace'行。是因为客户在另一个项目中吗?我该如何解决?如果我要创建一个新模型并在我的API中使用它,那么每次添加它都是非常繁琐的事情。

0 个答案:

没有答案