Novidades do .NET 7: melhorias no suporte a Swagger/OpenAPI em Minimal APIs no ASP.NET Core
O Preview 4 do .NET 7 foi lançado no início deste mês (Maio/2022) e, como era de se esperar, trouxe inúmeras novidades no desenvolvimento de soluções Web com ASP.NET Core:
Uma dessas melhorias envolve a integração com OpenAPI/Swagger na documentação de operações definidas em Minimal APIs, através de um extension method chamado WithOpenApi e que requer a inclusão do package Microsoft.AspNetCore.OpenApi (como indicado no arquivo .csproj a seguir):
O exemplo detalhado na próxima listagem faz uso da operação MapGet para definir um endpoint voltado à conversão de temperaturas em Fahrenheit, produzindo como resultado os valores equivalentes nas escalas Celsius e Kelvin. Já o método WithOpenApi (namespace Microsoft.AspNetCore.OpenApi) dependerá do preenchimento de uma instância de OpenApiOperation, em que serão especificadas configurações como descritivos, parâmetros de entrada e retornos da operação em questão:
Na imagem seguinte podemos observar as diferentes configurações aplicadas com o método WithOpenApi para o endpoint de conversão de temperaturas:
Este projeto de exemplo também foi disponibilizado no GitHub:
https://github.com/renatogroffe/ASPNETCore7-Preview4-MinimalAPIs-OpenApi_ConversaoTemperaturas
E finalizo este artigo com um convite…
Segunda 20/06 às 21:00 — horário de Brasília — teremos mais um evento online e gratuito no canal Canal .NET.
Esta live trará novas dicas, truques e alternativas úteis para o desenvolvimento Back-End e de APIs REST com .NET 6, C#, ASP.NET Core e Azure Functions. Ao longo da apresentação será coberto o uso de diferentes frameworks, serviços na nuvem, mensageria e boas práticas de forma a facilitar e tornar mais dinâmica a implementação de soluções baseadas na plataforma .NET no seu dia a dia.
Teremos também algumas novidades do .NET 7 e C# 11!
Para participar faça sua inscrição no link a seguir, a transmissão acontecerá via YouTube: