Resumo documentado do meu modo de montar meu ambiente em Clean Arch MVC. Para esse projeto, desenvolvi na versão 5, podendo ser adaptavél com pouco esforço com as versões 6, 7 e 8.
dotnet --list-sdks
3.1.426 [C:\Program Files\dotnet\sdk]
5.0.416 [C:\Program Files\dotnet\sdk]
6.0.100 [C:\Program Files\dotnet\sdk]
7.0.100 [C:\Program Files\dotnet\sdk]
7.0.101 [C:\Program Files\dotnet\sdk]
7.0.102 [C:\Program Files\dotnet\sdk]
7.0.404 [C:\Program Files\dotnet\sdk]
8.0.100 [C:\Program Files\dotnet\sdk]
dotnet --version
8.0.100
dotnet new gitignore
touch README.md
code .
dotnet new sln --name CleanArch
dotnet new classlib --name CleanArch.Domain -f net5.0
dotnet new classlib --name CleanArch.Application -f net5.0
dotnet new classlib --name CleanArch.Infra.Data -f net5.0
dotnet new classlib --name CleanArch.Infra.IoC -f net5.0
Usando o Visual Studio 2019: ASP.NET Core: ASP.NET Core Web App(Model-View-Controller)
Deveria marcar a opçao avancada - Configure HTTPS
Para esse projeto foi habilitado o Razor runtime compilation
dotnet new mvc --name CleanArch.WebUI -f net5.0
Domain - Não depende de nenhum.
Application - Dependêcia com o projeto: Domain
Infra.Data - Dependêcia com o projeto: Domain
Infra.IoC - Dependêcia com o projeto: Domain, Application, Infra.Data
WebUI - Dependêcia com o projeto: Infra.IoC
dotnet sln add CleanArch.Domain/CleanArch.Domain.csproj
dotnet sln add CleanArch.Infra.Data/CleanArch.Infra.Data.csproj
dotnet sln add CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj
dotnet sln CleanArch.sln add CleanArch.Domain/CleanArch.Domain.csproj
dotnet sln CleanArch.sln add CleanArch.Infra.Data/CleanArch.Infra.Data.csproj
dotnet sln CleanArch.sln add CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj
dotnet add CleanArch.Application/CleanArch.Application.csproj reference CleanArch.Domain/CleanArch.Domain.csproj
dotnet add CleanArch.Infra.Data/CleanArch.Infra.Data.csproj reference CleanArch.Domain/CleanArch.Domain.csproj
Passo 2.5.3 # Adicionado Referências na camada Infra.IoC, referencie as camadas Application e Infra.Data
dotnet add CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj reference CleanArch.Domain/CleanArch.Domain.csproj
dotnet add CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj reference CleanArch.Application/CleanArch.Application.csproj
dotnet add CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj reference CleanArch.Infra.Data/CleanArch.Infra.Data.csproj
dotnet add CleanArch.WebIU/CleanArch.WebIU.csproj reference CleanArch.Infra.IoC/CleanArch.Infra.IoC.csproj
Para compilar a aplicação para produção, execute o seguinte comando direto na pasta inicial:
cls
dotnet restore
dotnet build
dotnet run --project .\CleanArch.WebUI\CleanArch.WebUI.csproj
Este projeto está em constantes melhorias.
👉 Anderson Jardim
Linkedin: anderson-jardim ·
Github: @AndersonJardim ·