Swagger 如何在SwakshBuckle(在NSwagStudio中生成客户端)中声明可为空的响应类型

Swagger 如何在SwakshBuckle(在NSwagStudio中生成客户端)中声明可为空的响应类型,swagger,swashbuckle,nswag,swashbuckle.aspnetcore,nswagstudio,Swagger,Swashbuckle,Nswag,Swashbuckle.aspnetcore,Nswagstudio,我们使用Swashback来配置我们的AspNet核心(服务结构)项目,以生成Swagger json和UI。 然后,我们使用NSwagStudio使用Swashback生成的swagger,从nswag.json模板生成typescript和C#客户端 最近,最新版本的NSwagStudio中出现了一些变化,它生成的客户端在响应对象中添加了空检查。现有控制器返回空响应,因此客户端已停止工作 我们的示例控制器端点声明: [HttpPost] [ODataRoute] [Produces(&quo

我们使用Swashback来配置我们的AspNet核心(服务结构)项目,以生成Swagger json和UI。 然后,我们使用NSwagStudio使用Swashback生成的swagger,从nswag.json模板生成typescript和C#客户端

最近,最新版本的NSwagStudio中出现了一些变化,它生成的客户端在响应对象中添加了空检查。现有控制器返回空响应,因此客户端已停止工作

我们的示例控制器端点声明:

[HttpPost]
[ODataRoute]
[Produces("application/json")]
[ProducesResponseType(typeof(IActionResult), Status200OK)]
public Task PostXXX() => ...;
我们生成的客户(之前)

//----------------------
//

更多详细信息,请参阅本期github

如果你需要更多信息,请告诉我

//----------------------
// <auto-generated>
//     Generated using the NSwag toolchain v13.6.2.0 (NJsonSchema v10.1.23.0 (Newtonsoft.Json v12.0.0.0)) (http://NSwag.org)
// </auto-generated>
//----------------------

var status_ = ((int)response_.StatusCode).ToString();
if (status_ == "200") 
{
      var objectResponse_ = await ReadObjectResponseAsync<IActionResult>(response_, headers_).ConfigureAwait(false);
      return objectResponse_.Object;
}
//----------------------
// <auto-generated>
//     Generated using the NSwag toolchain v13.7.0.0 (NJsonSchema v10.1.24.0 (Newtonsoft.Json v12.0.0.0)) (http://NSwag.org)
// </auto-generated>
//----------------------

 var status_ = (int)response_.StatusCode;
if (status_ == 200)
{
     var objectResponse_ = await ReadObjectResponseAsync<Void>(response_, headers_).ConfigureAwait(false);
     if (objectResponse_.Object == null)
     {
            throw new Exception("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null);
     }
     return objectResponse_.Object;
}