Muito legal que você está começando e aprendendo por projetos. Eu dei uma olhada no seu código e tem algumas coisas a melhorar. Não leve isso como criticismo, todo mundo que está aprendendo tem de começar de algum lugar e você está indo muito bem. Mas acho que posso te ajudar em alguns pontos:

  • As pastas bin e obj foram para o GitHub. Tanta fazer um commit apagando elas e cria um arquivo gitignore para evitar que eles sejam publicados novamente. Com o dotnet basta entrar na pasta do código fonte e rodar dotnet new gitignore.

  • Para o deploy, aproveita que o dotnet possui uma ferramenta nativa para criar containers docker sem ter que escrever nenhum dockerfile. Aprenda como utilizá-la e como publicar uma imagem do seu app no dockerhub para baixar em qualquer servidor.

  • No deploy algumas coisas vão te encontrar. Então relaxe, Cors, redirect e companhia vão aparecer pra te assombrar mas descobrir como resolver só vai te tornar mais forte. Além de te fazer perder alguma sanidade e cabelos no processo. Mas é normal.

  • A estrutura do projeto está um pouco fora do padrão. Pelo que percebi você está criando uma estrutura próxima de DDD. É interessante estudar um pouco o que vai no que. Seus models estão no lugar certo, no domínio. Mas o datacontext e repositórios deveriam estar em uma camada de infraestrutura. Já o código dos controladores podem ser abistraidos na camada de aplicação. Não entendeu nada? Relaxa, tenta organizar de um jeito razoável para você e estuda DDD depois de fazer o projeto funcionar. Primeiro você faz funcionar, depois refatora.

  • Por último, quando finalizar seu projeto backend, tenta criar um front com Blazor para consumir sua API, tenta até integrar com o .Net aspire, é muito simples e muito legal para orquestrar todas as suas aplicações.

Vai fazendo isso aos poucos, tome o tempo necessário. Sim é bastante coisa. Mas acho que isso vai te dar uma ótima experiência e te tornar um grande programador.

Se tiver alguma dúvida pode comentar aqui que vou disponibilizar um tempo para te ajudar se eu puder. É um ótimo começo, continue firme!

Vlw pelo seu comentario, vou aplicar tudo q me disse, ja me falaram isso do github sobre o gitignore e basicamente eu tinha esquecido disso mas vou arrumar ja ja. Sobre a estrutura de pastas eu realmente nunca estudei nada disso, vi somente alguns videos.Vou estudar mais sobre DDD e tentar aplicar isso o quanto antes. Sobre o docker, eu ja comecei o projeto no rider e habilitei o docker, ja tenho ele la na pasta root do projeto so nao sei como funciona pq vou deixar isso pro final ne, mas basicamente eu comento isso no meu outro texto sobre o começo do projeto que esta aqui. Vou postar mais um texto ainda hj sobre o projeto então caso esteja interessado e so acessar. Mt obg pelo seu comentario foi de grande ajuda pra mim!

Vou estar acompanhando sua série e seu progresso.