Este projeto é um exemplo de API REST em .NET 6+ usando Minimal APIs, Entity Framework Core e SQLite para gerenciar pedidos (Order) e seus produtos (Product).
- .NET 9
- Entity Framework Core
- SQLite
- Minimal APIs
- Id (int) - Identificador único.
- Name (string) - Nome da ordem.
- CreationDate (DateTime) - Data de criação.
- Products (List) - Lista de produtos (relacionamento 1-N).
- Id (int) - Identificador único.
- Name (string) - Nome do produto.
- Quantity (int) - Quantidade.
- OrderId (int) - Chave estrangeira para Order.
- Clonar o repositório:
git clone
cd MinimalApis- Restaurar pacotes:
dotnet restore- Aplicar migrações e criar o banco:
Certifique-se de ter o dotnet-ef instalado:
dotnet tool install --global dotnet-efDepois rode:
dotnet ef migrations add InitialCreate
dotnet ef database update- Rodar a API:
dotnet runA API ficará disponível
GET /orders Retorna todas as ordens com seus produtos.
GET /orders/{id} Retorna uma ordem específica (com produtos).
POST /orders Cria uma nova ordem.
Exemplo de JSON para POST:
{ "name": "Primeira Ordem", "products": [ { "name": "Notebook", "quantity": 1 }, { "name": "Mouse", "quantity": 2 } ] }
PUT /orders/{id} Atualiza uma ordem.
Exemplo de JSON para PUT:
{ "name": "Segunda ordem" }
DELETE /orders/{id} Remove uma ordem e seus produtos.
Requisitos
- .NET 9 instalado
- CLI dotnet-ef para migrações
Comandos úteis
-
Criar uma nova migração: dotnet ef migrations add NomeDaMigracao
-
Aplicar migrações ao banco: dotnet ef database update
-
Remover última migração: dotnet ef migrations remove