Один из вариантов - настроить шаблоны.
- Клонировать репозиторий swagger-codegen .
- Предполагается, что вы используете последнюю стабильную версию v2.инструмента генерации кода, то ветка master в порядке.В противном случае извлеките тег для используемой версии инструмента.
- В проводнике Windows откройте
swagger-codegen\modules\swagger-codegen\src\main\resources
\ и скопируйте каталог aspnetcore
.Вставьте это в свой репозиторий исходного кода клиента. При следующем запуске инструмента codegen укажите аргумент -t
:
java -jar swagger-codegen-cli.jar generate
-i <your Open API spec URL/file>
-l aspnetcore
-o <outputdir>
-t <relative path to your>\aspnetcore
... other args as needed
Теперь выможете изменить эти шаблоны с помощью пользовательского кода.Например, у вас может быть внешняя библиотека с новым базовым классом контроллера, который предоставляет некоторую общую бизнес-логику.Затем вы можете изменить файл controller.mustache
для ссылки на ваш базовый класс.Просто один из многих примеров.Добавьте свои пользовательские шаблоны в систему контроля версий для непрерывной интеграции.
Предупреждения: файл controller.mustache
находится непосредственно в aspnetcore
, а другой - в aspnetcore\2.1
.Изучая исходный код , я вижу, что папка 2.1 используется для любой версии ASP.NET Core , кроме 2.0 .Я сам новичок в этом инструменте и не совсем понял, как его использовать;Утилита генерирует исходный код, который не будет собираться для меня из коробки.Он не генерирует классы безопасности, но генерирует код, который пытается использовать эти классы безопасности.Поэтому мне необходимо закомментировать код безопасности в шаблонах.