Este projeto é um tutorial prático criado por Daniel Lim-Apo, que demonstra como construir uma API RESTful completa utilizando .NET 10 e C#.
O objetivo deste projeto é fornecer um exemplo claro e direto de como implementar uma API para o gerenciamento de um cadastro simples de Pessoas. Ele foi desenvolvido com as melhores práticas iniciais de desenvolvimento web com o ecossistema .NET, incluindo uso do Swagger para documentação e uma estrutura em camadas (Controllers e Models).
- .NET 10
- C#
- ASP.NET Core Web API
- Swagger / OpenAPI para documentação interativa da API
- Docker para conteinerização da aplicação
A solução está localizada na pasta src/WebApiDotnetExample e é composta pelos seguintes componentes principais:
Model/Pessoa.cs: Representa a entidade base da aplicação. UmaPessoapossui propriedades comoId,Nome,CPF,EmaileDataDeNascimento.Controllers/PessoaController.cs: O coração da API. Este controlador expõe os endpoints HTTP necessários para realizar as operações CRUD (Create, Read, Update, Delete) em memória.Program.cs: Arquivo de configuração de inicialização da aplicação, onde os serviços são registrados e o pipeline HTTP é configurado (incluindo o Swagger).Dockerfile: Arquivo de configuração para criar uma imagem Docker da API.
A API expõe as seguintes rotas sob o caminho /api/Pessoa:
GET /api/Pessoa: Retorna a lista completa de todas as pessoas cadastradas.GET /api/Pessoa/{id}: Retorna os detalhes de uma pessoa específica, buscando pelo seu ID.POST /api/Pessoa: Cria um novo registro de pessoa. É necessário enviar os dados no corpo da requisição (JSON).PUT /api/Pessoa/{id}: Atualiza os dados de uma pessoa existente.DELETE /api/Pessoa/{id}: Remove uma pessoa do cadastro com base no seu ID.
Você pode executar o projeto de duas maneiras principais:
- Navegue até a pasta do projeto:
cd src/WebApiDotnetExample - Execute o comando de compilação e execução:
dotnet run
- Ao executar (se for no ambiente de Desenvolvimento), o Swagger estará disponível para você testar a API no navegador através do endereço
http://localhost:<porta>/swagger.
(Antes é preciso iniciar o docker na máquina, através do Docker Desktop).
- A partir do diretório do projeto, construa a imagem Docker:
cd src/WebApiDotnetExample docker build -t csharp-api-tutorial .
- Execute o contêiner:
docker run -d -p 8080:8080 -p 8081:8081 --name api-tutorial csharp-api-tutorial