如何在Visual Studio 2017中更新AutoRest

ld *_* dl 6 asp.net-web-api swagger-2.0 autorest visual-studio-2017

上下文 我想在Visual Studio 2017中使用"添加"/"REST API客户端..."将AutoRest生成的客户端用于webapi服务.但是,它会出现以下错误:

  • [Info] AutoRest Core 0.16.0.0
  • ...
  • [致命]生成客户端模型时出错:不支持集合格式"multi"(在参数"xxx"中).

较早版本的AutoRest(例如0.16.0)不支持"多"收集格式.所以我安装了最新版本AutoRest 0.17.3.使用Nuget.但是,当我使用"添加"/"REST API客户端..."时,它仍然使用0.16.0版本的AutoRest并给我相同的错误.视觉工作室2017似乎有内置的AutoRest版本0.16组装.

问题 如何获取最新版本的AutoRest并将其集成到Visual Studio 2017中?

小智 1

我也遇到了这个问题,所以我为其构建了一个名为REST API Client Code Generator 的工具。我在团队中工作,我们使用AutoRestNSwagSwagger Codegen等工具来生成 REST API 客户端,但 Visual Studio 中的“添加新 - REST API 客户端...”工具并不总是有效,这总是让我很恼火。到了重新生成客户端的时候就很麻烦

在此输入图像描述

REST API 客户端代码生成器依托AutoRestNSwag以及适用于Swagger Codegen CLIOpenAPI Codegen CLI的 Java SDK 。因此,为了能够使用 AutoRest,您需要安装Node.js,然后需要使用 NPM 手动安装 AutoRest

npm install -g autorest
Run Code Online (Sandbox Code Playgroud)

使用该工具会将 Swagger.json 文件添加到 C# 项目并为其设置自定义工具,以便每次对 Swagger.json 文件进行更改时,都会重新生成 API 客户端代码。不过,如果您使用 Auto、NSwag、Swagger Codegen、OpenAPI Codegen,则必须手动更新 Swagger.json 文件。但如果您选择使用NSwag Studio生成代码,那么您可以直接从 C# 项目的 .nswag 文件重新生成代码

在此输入图像描述