Um modelo de API mínima ASP produtivo .NET
Este é um repositório de modelo mostrando como se pode implementar uma API limpa com asp.net usando APIs mínimas. O foco nos 'recursos' deste modelo está na produtividade do Dev, os recursos reais da própria API foram mantidos básicos de propósito. Sinta -se à vontade para copiar este repositório ou reutilizar partes dele, não se esqueça de dar uma estrela se o fizer.
Alguns recursos neste modelo:
- Arquitetura de fatia vertical (agrupamento com base em recursos em vez de camadas técnicas)
- Uma configuração fácil de usar e rápido para executar testes de integração que é executado em segundos, com a única dependência sendo Docker com o uso de testexamplesDotNet
- Autenticação e autorização usando tokens JWT. Isso também é usado pelos testes, o que significa que você pode verificar se sua autenticação e autorização estão funcionando corretamente dentro dos testes.
- Pronto para o Opentelemetria
- Lançar o PROFILE PAR
- Construção automatizada usando ações do GitHub que verifica a formatação do código, cria e executa os testes.
Testes de execução
Somente o Docker é obrigado a executar os testes (Tip: Podman é gratuito para usar). A primeira execução pode demorar um pouco mais, pois a imagem do Docker é baixada. Execute o seguinte comando para executar os testes:
Executando o aplicativo
- Primeiro gerar um JWT que você pode usar para testes locais:
dotnet user-jwts create --role " read " --role " write "
NOTA: Os terminais dos empregos e do departamento exigem apenas autenticação, mas os pontos de extremidade dos funcionários exigem que você tenha as reivindicações corretas no token JWT.
- Execute o banco de dados usando o Docker-Compose.yaml fornecido. Opcionalmente, também execute o painel Aspire no arquivo de composição para ver facilmente a saída Opentelemetria.
- Execute o aplicativo. Você pode explorar os pontos de extremidade usando o Swagger em
https://localhost:7162/swagger .