-
Notifications
You must be signed in to change notification settings - Fork 0
03_wepapi
Douglas Fernandes Pereira da Silva Jr edited this page May 28, 2019
·
10 revisions
Neste exemplo vamos criar um exemplo básico de repositório para manipulação de dados, e a criação de um repositório genérico.
Começamos este passo na branch topicos/t3/p4.
Vamos criar a projeto de API, junto com o restante da estrutura do projeto BLL ( regras de negócio ) e DL ( Modelos e Classes)
- Clique com o botão direito na solution, e escolha a opção ADD -> New Project
- Na tela selecione .NET Core (Dentro de Visual C#), escolha a opção Class Library (.NET Core).
- No Name: digite: AcessoDados.BLL.
- Clique com o botão direito na solution, e escolha a opção ADD -> New Project
- Na tela selecione .NET Core (Dentro de Visual C#), escolha a opção Class Library (.NET Core).
- No Name: digite: AcessoDados.DL.
- Clique com o botão direito na solution, e escolha a opção ADD -> New Project
- Na tela selecione .NET Core (Dentro de Visual C#), escolha a opção ASP.NET Core Web Application.
- No Name: digite: AcessoDados.API.
- Confirme que a versão está como ASP.NET Core 2.1
- Escolha o modelo API
- Em Authentication deixe a configuração No Authentication.
- Clique em OK.
- Adicione o projeto AcessoDados.DL como referência.
- Através do NuGet, vá a aba de pacotes instalados Installed. Volte a versões dos seguintes pacotes para a 2.1.11, isso é portante para a compatiblidade com a versão da API, com o ASP.NET Core 2.1 ( Faça na ordem).
- Microsoft.EntityFrameworkCore.SqlServer
- Microsoft.EntityFrameworkCore.Tools
- Microsoft.EntityFrameworkCore.Design
- Adicione o projeto AcessoDados.DAL como referência.
- Adicione o projeto AcessoDados.DL como referência.
- Adicione o projeto AcessoDados.BLL como referência.
- Adicione o projeto AcessoDados.DAL como referência.
- Adicione o projeto AcessoDados.DL como referência.
- Clique com o botão direito no projeto AcessoDados.API, e escolha a Set as StartUp Project
Branch final topicos/t4/p1. Para ver as alterações completas DIFF das alterações.
Vamos criar nossa primeira API, de Listagem de categorias
- Adicione a pasta API.
- Dentro da pasta API, Adicione a pasta Response.
- Dentro da pasta API.Response, adicione a classe CategoriaResponseModel. Arquivo final.
- Adicione a pasta Services.
- Dentro da pasta Services, adicione a classe CategoriaService. Arquivo final.
- Dentro da pasta Controllers, adicione a classe CategoriasController. Arquivo final.
- Através do NuGet adicione o pacote Swashbuckle.AspNetCore.
- Vamos alterar o arquivo Startup.cs, para configurar o swagger na aplicação. DIFF alterações Arquivo final.
Execute o projeto, e acesse /swagger para ver a API publicada.
Vamos alterar os repositórios usar a estrutura de injeção de dependência, ter algumas simplificações, e conseguir ter acesso ao usuário que está logado.
- Vamos alterar o arquivo RepositorioComum.cs, para este usar a dependência de usuário logado. DIFF alterações Arquivo final.
- Vamos Deletar o arquivo RepositorioCategoria.cs, por ser redundante.
- Vamos atualizar o arquivo RepositorioVideos.cs, para herdar a dependência. DIFF alterações Arquivo final.
- Vamos atualizar o arquivo CategoriaService, para utilizar a estrutura de injeção de dependência através do construtor. Arquivo final.
- Vamos alterar o arquivo Startup.cs, para configurar as injeções de dependência. DIFF alterações Arquivo final.
- Vamos alterar a classe CategoriasController, para usar a estrutura de injeção de dependências. Arquivo final.
- Vamos alterar o arquivo Program.cs, para remover erros de compilação DIFF alterações Arquivo final.
Execute o projeto, e acesse /swagger para ver a API publicada.