c # swagger универсальные типы ProducesResponseType like t IEnumerable> - PullRequest
0 голосов
/ 26 сентября 2018

Пара нашего контроллера API выдает ответ типа

ProducesResponseType (typeof (IEnumerable >) (int) HttpStatusCode.OK)

Swashbuckle.AspNetCore версии 2.40 создает JSON следующим образом:

образец части:

"Success", "schema": {"type": "массив "," items ": {" $ ref ":" # / definitions / KeyValuePair [String, Int32] "}}}}}}

, но для Swashbuckle.AspNetCore 3 он выдает

"response": {"200": {"description": "Success", "schema": {"uniqueItems": false, "type": "array", "items": {"$ ref ":" # / definitions / System.Collections.Generic.KeyValuePair`2 [[System.String, System.Private.CoreLib, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = 7cec85d7bea7798e], [System.Int64,System.Private.CoreLib, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = 7cec85d7bea7798e]] "}}}}}},

Это вызывает проблемы при использовании приложения через клиент Autorest.

1024 * Он пытается генерировать файл как

SystemCollectionsGenericKeyValuePair2SystemStringSystemPrivateCoreLibVersion4000CultureNeutralPublicKeyToken7cec85d7bea7798eSystemDecimalSy stemPrivateCoreLibVersion4000CultureNeutralPublicKeyToken7cec85d7bea7798e.cs

и получить IOException Get-ChildItem:. Не удалось найти пункт

C: \ soruce \ Generated \ Model s \ SystemCollectionsGenericKeyValuePair2SystemStringSystemPrivateCoreLibVersion4000CultureNeutralPublicKeyToken7cec85d7bea7798eSystemInt32Syst

* * * * * 353 * * * * 1035
...