Skip to content

About

API REST de produtos em ASP.NET Core (.NET 10) com CRUD completo e Swagger.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

📦 API de Produtos

.NET C# Swagger Status

API REST desenvolvida com ASP.NET Core Web API para gerenciamento de produtos, implementando operações completas de CRUD (Create, Read, Update e Delete).


🚀 Objetivo

Este projeto foi desenvolvido com o objetivo de praticar os principais conceitos de construção de APIs REST utilizando ASP.NET Core, incluindo:

  • Criação de endpoints RESTful
  • Manipulação de dados via HTTP
  • Boas práticas de organização de código
  • Tratamento de respostas HTTP
  • Documentação automática com Swagger
  • Validação de regras de negócio

🛠️ Tecnologias Utilizadas

  • C#
  • ASP.NET Core Web API
  • Swagger / OpenAPI
  • JSON

📁 Estrutura do Projeto

ApiProdutos
│
├── Controllers
│   └── ProdutosController.cs
│
├── Models
│   └── Produto.cs
│
├── Program.cs
└── appsettings.json

🧠 Modelo de Dados

Produto

public class Produto
{
    public int Id { get; set; }
    public string Nome { get; set; }
    public decimal Preco { get; set; }
}

🌐 Endpoints Disponíveis

📋 Listar todos os produtos

GET /api/produtos

Retorna todos os produtos cadastrados.


🔍 Buscar produto por ID

GET /api/produtos/{id}

Exemplo:

GET /api/produtos/1

Retorna o produto correspondente ao ID informado.


➕ Cadastrar produto

POST /api/produtos

Exemplo de requisição:

{
  "id": 2,
  "nome": "Mouse",
  "preco": 80.00
}

✏️ Atualizar produto

PUT /api/produtos/{id}

Exemplo de requisição:

{
  "id": 2,
  "nome": "Mouse Gamer",
  "preco": 150.00
}

Atualiza as informações do produto informado.


🗑️ Remover produto

DELETE /api/produtos/{id}

Remove o produto da coleção.


⚠️ Regras de Negócio

  • Não é permitido cadastrar produtos com IDs duplicados.
  • Produtos inexistentes retornam 404 Not Found.
  • Os dados são armazenados em memória utilizando uma lista.
  • Os registros são perdidos ao reiniciar a aplicação.

▶️ Executando o Projeto

1. Clone o repositório

git clone https://github.com/seu-usuario/ApiProdutos.git

2. Acesse a pasta do projeto

cd ApiProdutos

3. Execute a aplicação

dotnet run

📖 Documentação da API

Após iniciar a aplicação, acesse:

https://localhost:xxxx/swagger

A interface Swagger permite visualizar e testar todos os endpoints da API diretamente pelo navegador.


🔄 Fluxo da Aplicação

Cliente
   │
   ▼
ProdutosController
   │
   ▼
Lista em Memória
   │
   ▼
Resposta JSON

✅ Funcionalidades Implementadas

  • CRUD completo
  • Cadastro de produtos
  • Consulta de produtos
  • Busca por ID
  • Atualização de dados
  • Exclusão de registros
  • Validação de ID duplicado
  • Retornos HTTP apropriados
  • Integração com Swagger

📈 Melhorias Futuras

  • Integração com SQL Server
  • Entity Framework Core
  • DTOs
  • AutoMapper
  • Autenticação JWT
  • Paginação de resultados
  • Versionamento da API
  • Testes unitários
  • Persistência em banco de dados

👨‍💻 Autor

Desenvolvido para fins de estudo e aprimoramento em desenvolvimento de APIs REST com ASP.NET Core.


📄 Licença

Este projeto está disponível para fins educacionais e aprendizado.

About

API REST de produtos em ASP.NET Core (.NET 10) com CRUD completo e Swagger.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages