Uma demonstração simples da API da Web com documentação de Swagger, manipulação de erros personalizada, testes de unidade, JSONPATCH e um testador HTTPClient. Recursos vídeos do YouTube no estilo tutorial para alguns tópicos.
O objetivo deste projeto do GitHub é demonstrar um aplicativo simples da API da CRUD com tutoriais adicionais (incluindo vídeos do YouTube) e referências, incluindo arrogância, teste de unidade, jsonpatch, manuseio de erros personalizados e exibição, testadores de clientes etc.
A solução do Visual Studio possui três projetos: Contosopizza (Web API), contosopizza.tests (testes de unidade) e webapiclient (um aplicativo simples de console httpclient)

As classes de controlador, modelo e serviço com o resumo do membro do projeto da API da Contosopizza são mostradas abaixo.

Esta é uma API da Web simples que segue o padrão CRUD padrão (Criar, Leia, Atualizar e Excluir). As imagens de demonstração das operações da API são mostradas abaixo por categoria.






Aqui estão algumas capturas de tela mostrando a demonstração da Web API JSONPATCH.


Aqui está a referência do código.
[
{
"value": "ModifiedPizza",
"path": "/name",
"op": "replace"
}
]

Este é um ótimo vídeo de referência tutorial, se você quiser saber mais sobre configuração, instalação e uso do JSONPATCH para o seu projeto de API da Web.
Atualizando dados com jsonpatch | Série de iniciantes para Web APIs
Jsonpatch na API Web Core ASP.NET
Este projeto de tutorial e demonstração mostrará como configurar, configurar e codificar um manipulador de erros personalizado simples para o projeto API da Web da Contoso Pizza.
Os desenvolvedores devem planejar erros não tratados no código. O projeto API da Web da Contoso Pizza demonstra como fazer isso. Na demonstração, é criado um ponto de extremidade que sempre lança uma exceção não atendida. O projeto possui um controlador de erro personalizado que lida e registra as exceções antes de retornar um objeto de modelo de problema padrão ao usuário. O controlador de erro é especificado na configuração do programa para rirar para um controlador de erro personalizado quando não estiver em execução em um ambiente de desenvolvimento. O ambiente de desenvolvimento é especificado nas configurações do perfil de lançamento de depuração, com o valor padrão sendo a produção, a menos que especificado de outra forma.
Para ver as diferenças na exibição de erros entre desenvolvimento e produção, primeiro execute a API no modo de desenvolvimento. Teste o terminal que sempre desencadeia uma exceção não tratada. Na interface do usuário do Swagger, você pode ver os detalhes da resposta e da exceção. A janela do navegador possui uma visão de desenvolvedor separada e elegante dos resultados do erro.
Para executar a API no modo de produção, remova a variável de ambiente ou defina manualmente o valor para a produção. Como a interface do usuário do Swagger não é executada no modo de produção, você precisará testar o terminal da API manualmente com um URL. O resultado final para o usuário é um erro geral com um identificador. Um usuário criaria um tíquete de problemas com essas informações. A empresa poderia então concluir a solução de problemas detalhada correspondendo ao identificador de erro a um registro interno mais detalhado.

Este projeto de tutorial e demonstração mostrará como adicionar, configurar, configurar e verificar e verificar a documentação do Swagger para o seu projeto WebAPI do desenvolvedor. Os resultados finais estão neste repo.
Swashbuckle e Swagger são duas ferramentas populares usadas para gerar documentação do desenvolvedor para APIs da Web. O Swashbuckle é um pacote que pode ser adicionado a um projeto da API da Web ASP.NET Core para integrar a interface do usuário do Swagger. Possui três componentes principais: swashbuckle.aspnetcore.swagger, que é um modelo de objeto Swagger e middleware para expor objetos de swaggerdocument como terminais JSON; Swashbuckle.aspnetcore.swaggergen, que é um gerador de swagger que cria objetos de swaggerdocument diretamente de suas rotas, controladores e modelos; e swashbuckle.aspnetcore.swaggerui, que é uma versão incorporada da ferramenta Swagger UI. Ele interpreta o Swagger JSON para construir uma experiência rica e personalizável para descrever a funcionalidade da API da Web. O Swagger (OpenAPI) é uma especificação de idioma-agnóstico para descrever APIs REST. Ele permite que computadores e humanos entendam os recursos de uma API REST sem acesso direto ao código -fonte. Seus principais objetivos são minimizar a quantidade de trabalho necessária para conectar os serviços desacoplados. ¹³⁴

Este projeto de tutorial e demonstração mostrará como configurar, configurar e codificar um simples httpclient para o projeto da API da Web Contoso Pizza.
Neste vídeo do YouTube, aprenderemos a criar um projeto de aplicativo de console simples que se conecte a uma API da Web e o teste. O vídeo inclui uma breve demonstração do projeto em execução e saída dos resultados da API. Obteremos o arquivo OpenAPI executando primeiro nosso webapi localmente para mostrar a interface do usuário do Swagger. O arquivo JSON para a nossa API da Web pode ser baixado e salvo no diretório do projeto. Há outro vídeo na série de playlist que mostra como configurar e configurar a documentação do Swagger. O próximo passo é adicionar um novo projeto de aplicativo de console à nossa solução. Este será o aplicativo HTTPClient para conectar -se à nossa API da Web. Em seguida, adicionaremos uma referência de serviço OpenAPI do arquivo Swagger UI JSON que salvamos anteriormente. O Visual Studio irá gerar automaticamente a classe de código do cliente necessária para interagir com a API da Web do Contoso Pizza. Vamos dar uma olhada na classe de código gerada automaticamente. O construtor precisa de uma instância de objeto HTTPClient e o URL base da API da Web em execução. Se você executar sua API da Web localmente, poderá encontrar isso no perfil de lançamento de depuração. Por fim, podemos codificar nosso projeto para criar uma referência de serviço httpclient e proxy à API da Web do Contoso UI Pizza e tentar recuperar algumas pizzas. Verifique se o aplicativo da API da Web já está em execução localmente antes de executar o aplicativo HTTPClient Console.

Este projeto de tutorial e demonstração mostrará como configurar, configurar e codificar testes de unidade simples para um projeto webapi.
Neste vídeo, discutiremos como escrever testes de unidade simples para uma API da Web com operações do controlador CRUD. Usaremos pacotes Xunit e FakeTeasy para escrever os testes. Abordaremos o básico dos testes de unidade, incluindo como configurar o projeto de teste, como escrever testes para cada operação CRUD e como usar o Xunit e o FakeTeasy para criar zombarias e stubs. Também discutiremos as melhores práticas para escrever testes de unidade, como manter os testes independentes e garantir que sejam fáceis de ler e manter.

Embora tutoriais, vídeos e documentação tenham sido referenciados, este projeto é criativamente meu próprio código e estilo para demonstrar minha experiência técnica e contribuir para o conhecimento tecnológico coletivo no GitHub. Listei algumas das fontes em que desenhei alguns exemplos de código e conhecimento.
Série de iniciantes para: Web APIs
Microsoft Learn - Crie uma API da Web com os controladores principais do ASP.NET
Fonte: Conversa com o Bing, 11/11/2023 (1) Comece com Swashbuckle e Asp.net Core. https: //learn.microsoft.com/en-us/asp .... (2) documentação da API da Web Core ASP.NET com Swagger/OpenAPI. https: //learn.microsoft.com/en-us/asp .... (3) O que é Swagger, Swashbuckle e Swashbuckle UI. https: //stackoverflow.com/questions/4 .... (4) Melhore a experiência do desenvolvedor de uma API com documentação de swagger .... https: //learn.microsoft.com/en-us/tra .... Asp.net Core Documentation on github
Jsonpatch na API Web Core ASP.NET