我可以使用哪种工具来生成.NET客户端以从Swagger定义中使用?
例如,我开始尝试使用NSwag Studio,并且希望能够生成类似于我以前创建的Repository类的代码。
答案 0 :(得分:2)
您可以使用swagger项目中的swagger-codegen
工具。它产生使用
RestClient
进行HTTP调用Newtonsoft.Json
用于JSON编组DataContract
用于模型。您可以下载cli app或使用online editor。 petstore示例模型如下所示:
using System;
using System.Text;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using Newtonsoft.Json;
namespace IO.Swagger.Model {
/// <summary>
///
/// </summary>
[DataContract]
public class Order {
/// <summary>
/// Gets or Sets Id
/// </summary>
[DataMember(Name="id", EmitDefaultValue=false)]
[JsonProperty(PropertyName = "id")]
public long? Id { get; set; }
/// <summary>
/// Gets or Sets PetId
/// </summary>
[DataMember(Name="petId", EmitDefaultValue=false)]
[JsonProperty(PropertyName = "petId")]
public long? PetId { get; set; }
.... snip ....
}
答案 1 :(得分:2)
您可能想尝试OpenAPI Generator(https://github.com/OpenAPITools/openapi-generator),它同时支持OpenAPI规范v2和v3。 (OpenAPI spec v2以前称为Swagger spec v2)
有3种不同的C#客户端生成器:
该项目还包括2个C#服务器生成器:csharp-nancyfx,aspnetcore
如果需要帮助,请在Github存储库中打开一个问题。