Nswag的新版本生成不兼容的数据类型

时间:2019-06-10 10:27:55

标签: c# .net asp.net-core swagger nswag

我有一个 CMD 脚本,该脚本使用“ nswag swagger2csclient”生成用于与另一个API通信的客户端。它曾经工作过,但是一旦使用了Nswag的较新版本,事情就会开始出错。

代码如下:

// Controller method
[ProducesResponseType(typeof(IEnumerable<CarViewModel>), 200)]
public async Task<ObjectResult> GetCars()

//Generated result with an older version of Nswag
System.Threading.Tasks.Task<System.Collections.ObjectModel.ObservableCollection<CarViewModel>> GetCars();

//Generated result with an newer version of Nswag
System.Threading.Tasks.Task<System.Collections.Generic.ICollection<CarViewModel>> GetCars();

Generic.ICollection 的使用与我自己的代码不兼容,更改所有数据类型将是繁琐的工作,因此我需要Nswag来生成 ObjectModel.ObservableCollection 它在旧版本中做了。

我如何进行这项工作?

1 个答案:

答案 0 :(得分:0)

您可以使用/ ArrayType:Collection参数更改此默认值

请参见https://github.com/RicoSuter/NJsonSchema/wiki/CSharpGeneratorSettings