Как использовать Swagger Codegen с ядром.net
Я могу интегрировать Swagge UI в мой веб-API с помощью Swashbuckle. Я также хочу изучить возможность кодирования сваггера. Может кто-нибудь помочь в - как я могу интегрировать Swagger Codegen в мой проект веб-API? Или мне нужно скачать какой-нибудь инструмент? Я хочу, чтобы он мог разместить codegen и передать спецификации формы json / raml для генерации клиента в ядре.net.
Я не могу найти достаточно документов выше.
РЕДАКТИРОВАТЬ: Я хочу знать, как я могу разместить codegen в моем WEBAPI.
Спасибо!
3 ответа
Теперь вы можете использовать Nswag. Есть несколько утилит генератора кода - UI, Console, msbuild.
Вы должны установить "Swashbuckle.AspNetCore.Swagger
"Пакет nuget, щелкните правой кнопкой мыши по вашему проекту и выберите Управление пакетами Nuget.
Затем вы должны добавить эти коды в место запуска вашего проекта, например. Program.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
// Register the Swagger generator, defining one or more Swagger documents
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
});
}
public void Configure(IApplicationBuilder app)
{
// Enable middleware to serve generated Swagger as a JSON endpoint.
app.UseSwagger();
app.UseMvc();
}
Похоже, вы просто хотите сгенерировать C# из спецификации OpenApi (входные данные предоставляет ваша реализация Swagger) вашего API.
Чтобы сгенерировать код (например, C#) из файла спецификации OpenApi вашего API, вы можете сделать что-то вроде этого:
java -jar .\openapi-generator-cli-5.0.0-beta3.jar generate -i https://localhost:xxxx/api/v1/swagger.json -g csharp
Вам необходимо загрузить OpenApi Generator Jar. В качестве альтернативы вы можете загрузить свой код в веб-генератор. Но я всегда запускал это локально; вы никогда не знаете, где заканчивается ваш код.