Как я могу управлять дублирующими декларациями общих схем от спецификации OpenAPI для общих библиотек?C#

Место общения программистов C#
Anonymous
Как я могу управлять дублирующими декларациями общих схем от спецификации OpenAPI для общих библиотек?

Сообщение Anonymous »

У меня есть серия спецификаций OpenAPI 3.0.3 для нескольких служб ASP.NET. Схемы для Сервисов используют серию общих моделей: в этом случае, общие ответы на ошибку, типы для дат/время и т. Д. Чтобы написать бизнес -логику для методов контроллера, я просто расширяю этот класс. Это приводит к тому, что каждая служба имеет свое собственное объявление объектов ответа на ошибку, типов даты и времени, а также других, которые следует использовать между службами.

Код: Выделить всё

specification root
├───example-api
│   ├───components
│   │   ├───/responses (service-specific response objects)
│   │   └───/schemas (service-specific models)
│   ├───/paths (API endpoints)
│   └───example-api.yml (top-level API definition, using example-api, common schema)
├───example-api-2
│   ├───components
│   │   ├───/requestBodies (service-specific response objects)
│   │   ├───/responses (service-specific response objects)
│   │   └───/schemas (service-specific model)
│   ├───/paths (API endpoints)
│   └───example-api-2.yml (top-level API definition, using example-api-2, common schema)
└───common
└───components
└───schemas (common schemas used in every endpoint)
В приведенном выше примере в примере определения API используются модели из папки Common/Components/scehmas.
Когда nswag openapi2cscontroller/inpow /namespace: [controlernamespace] /classname: [serviceName] /controllersTyle: Abstract /useActionResulttype: True < /code> Команда выполняется для каждого API, каталоги сервисов выглядят как следующее: < /p>
< /p>


Подробнее здесь: https://stackoverflow.com/questions/797 ... spec-for-s

Вернуться в «C#»