Con l'avvento di .NET 9, la generazione dei documenti OpenAPI in ASP.NET Core ha subito una significativa evoluzione, introducendo un supporto integrato che semplifica e ottimizza il processo di documentazione delle API.
OpenAPI è uno standard ampiamente adottato per la definizione e la documentazione delle API HTTP, impropriamente conosciuto come Swagger, che è in realtà una libreria. Fornisce un modo standardizzato per descrivere endpoint, formati di richiesta e risposta, schemi di autenticazione e altri dettagli essenziali delle API.
// program.cs builder.Services.AddOpenApi();
Inserendo questa semplice istruzione, tutti i metodi che potranno essere ricollegati a API HTTP verranno documentati all'interno di un file. Questo tipo di implementazione porta anche ad un importante vantaggio, che fino ad ora non era disponibile: il pieno supporto alla compliazione AOT.
Attenzione la libreria Swagger ci sarà comunque di aiuto, perchè è grazie a Swashbuckle.AspNetCore.SwaggerUI che riusciremo a visualizzare l'interfaccia grafica che ci permetterà di testare con pochi click tutti i nostri endpoints. Rispetto alla configurazione precedente, che lavorava per convenzioni, dato che sia la creazione del documento, che l'interfaccia erano gestite dalla stessa libreria, da ora dovremo specificare noi il documento da interpretare.
// program.cs
app.UseSwaggerUI(options => options.SwaggerEndpoint("/openapi/v1.json", "Mio progetto API"));
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare i command service nei test con .NET Aspire
Esporre un server MCP con Azure API Management
Personalizzare le pagine di errore su Azure App Service
Importare un servizio esterno in .NET Aspire
Configuratione e utilizzo .NET Aspire CLI
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Configurare OpenAI in .NET Aspire
Centralizzare gli endpoint AI Foundry con Azure API Management
Ridurre il reflow cambiando il CSS
Abilitare .NET 10 su Azure App Service e Azure Functions
Raggruppamento degli aggiornamenti di dipendenze tra directory in un monorepo con Dependabot
Come automatizzare il download dei report di billing da GitHub Enterprise


