Caso esteja se confrontando com os erros NETSDK1047 e NETSDK1005 ao tentar compilar um projeto .NET via linha de comando do MSBuild, porém você já fez tudo que os resultados padrão do Google lhe dizem: isto é, você tem o MSBuild maior que a versão 16.8, você tem um NuGet maior que a versão 5.8, você limpou as pastas obj de build, você tem definidos os TargetFrameworks e RuntimeIdentifiers no projeto e, inclusive, seu projeto compila corretamente via Visual Studio, mas tem esse erro via linha de comando: confira os labels que está usando na sua configuração!
No meu trabalho lutei um tempo com uma situação dessa acima, até que achei o problema: confira os labels que está usando para Configuration/Platform na hora da compilação! No Visual Studio compilava a solution no perfil "Release/Win32", que mapeava no Configuration Manager para a versão "Release/x86" do projeto C#. Porém ao fazer a compilação via linha de comando com o MSBuild e colocando a configuração "Release" e a plataforma "Win32", ele estava se perdendo na hora de compilar o projeto C# pois encontrava apenas a plataforma "x86".
A solução é só mudar no seu .csproj a plataforma para "x86" ou enfim, fazer o ajuste que for mais apropriado para você!
Espero ter ajudado.