Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Segue o pull request do meu projeto.
Implementei a conexão de base de dados usando uma base do sql server hospedado no Azure.
Criei 4 projetos para a minha solução:
-MainStartup: usado para armazenar os controladores com os endpoints da api.
-ResourcesDb: usado para os recursos de conexão de banco de dados como contexto de configuração de conexão da base de dados e mapeamento das entidades com as tabelas da base de dados.
-Domain: armazena os modelos de entidades do meu projeto, enums, classes de parâmetros e atributos de configuração.
-ConsumindoApi: um projeto de teste com um exemplo simples de consumo de api usando FLUTTER (plataforma hibrida para ANDROID e IOS)...tem windows também, mas o diferencial é ANDROID e IOS. Como o tempo foi curto não foi possível fazer o consumo em web, em flutter para consumir a API estou um pouco mais familiarizado sobre a questão do consumo, resposta, timeout, parâmetros e bibliotecas.
Para conexão da base de dados utilizei o micro ORM dapper.
Organizei o projeto me baseando na arquitetura MVP (model, view, presenter) e tentando seguir os princípios do SOLID.
Como a api não tem pages e interrface, então a camada de view enquadrei como é a camada que o client faz o acesso, sendo assim o projetos onde se encontram as rotas dos endpoints da API. A model se enquadra onde se encontra as entidades Developer, Project, BusinessHour. A presenter, onde o processamento das informações é feito, nos handlers.
Desde já, agradeço a oportunidade!
Gustavo Amorim Queiroz