Новая версия 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, как это было в более старая версия.

Как мне заставить это работать?


person Jonathan Hellqvist    schedule 10.06.2019    source источник


Ответы (1)


Вы можете изменить это значение по умолчанию с помощью параметра /ArrayType:Collection.

См. https://github.com/RicoSuter/NJsonSchema/wiki/CSharpGeneratorSettings.

person Rico Suter    schedule 11.06.2019