Sobre | Vídeo | Links para os outros projetos | Ferramentas utilizadas | Estrutura da Aplicação | Como reproduzir | Autor
-
O GeekHub API faz parte de um conjunto de 3 projetos, desenvolvidos para a avaliação final da 6ª Academia de .NET. O projeto Final consiste de 3 aplicações (Front-End, Back-End e IA, para fazer conexão com ChatGPT, DALL-E e Speech Service) que trabalham em conjunto. Neste repositório encontra-se a parte API do Projeto, feita com ASPNET CORE.
-
O Back-End consiste de 8 pastas (Context, Controllers, DTOs, Entities, Mappings, Migrations, Repositories e Validation) que compõem uma API REST Sobre o Universo de Mangás e HQs, esta aplicação possui os dados dos mangás e/ou HQs presentes no GeekHub. A aplicação também possui um CRUD onde pode-se cadastrar, editar e remover novas HQs e/ou mangás. Essa aplicação utiliza Autenticação via Token JWT Bearer e CORS. Para realizar o cadastro, edição ou exclusão de HQs e/ou mangás será necessário estar autenticado na aplicação, para isso você pode criar uma nova conta informando email e senha.
- C#
- AspNetCore
- Dotnet 7
- DTO's
- Versionamento de Código com Git e Github
- Swagger
- SQL Server
- Abordagem Code First
- Integração com Front-end
- Token JWT
- CORS
- AutoMapper
- EntityFrameWork
- API REST
- Este é o lugar onde o contexto do Entity Framework Core é definido, estabelecendo a base para interações com o banco de dados.
- Aqui, os controladores são criados para definir os EndPoints da API, indicando como os dados serão manipulados e respondidos.
- Nesta seção, são criados os Objetos de Transferência de Dados, que desempenham um papel essencial na comunicação entre diferentes partes da aplicação.
- As entidades de modelo de domínio do projeto são definidas nesta seção, representando os principais objetos que a aplicação manipula.
- Aqui, o mapeamento entre os DTOs é configurado usando o AutoMapper, facilitando a conversão de dados entre diferentes formatos.
- As migrações geradas, presentes nesta seção, representam as alterações no esquema do banco de dados ao longo do tempo.
- A definição dos repositórios ocorre nesta parte. Dentro da pasta "Repositories", há uma subpasta "Interfaces" para as interfaces, e outra "Repositories" para as classes concretas que implementam essas interfaces.
- Foi criada uma classe que herda da classe Exception com o propósito de validar as entidades do modelo de domínio, garantindo a integridade dos dados.
Certifique-se de ter as seguintes ferramentas instaladas:
Clone o repositório que contém a API Web ASP.NET Core. Você pode fazer isso usando o Git no terminal:
git clone https://github.com/IsaquePemasi/GeekHubApi
Navegue até o diretório clonado e abra o projeto usando o Visual Studio ou o Visual Studio Code:
cd GeekHubApi
code . # se estiver usando o Visual Studio Code
Certifique-se de que todas as dependências do projeto estão instaladas. No terminal, execute o seguinte comando:
dotnet restore
Você precisará configurá-lo, isso pode incluir a criação do banco de dados, aplicando migrações, etc. Execute os comandos apropriados, por exemplo:
dotnet ef database update
Compile e execute a aplicação para garantir que tudo está funcionando corretamente. Execute o seguinte comando:
dotnet run
Acesse a API em um navegador ou usando uma ferramenta como Swagger para testar os endpoints.