Tive um estranho que pode valer a pena documentar entre as outras possibilidades aqui ..
Eu adicionei um projeto compartilhado à minha solução, com código que foi usado em dois ou três dos outros projetos. Como você sabe - Projetos compartilhados são apenas código, e não realmente um projeto no sentido tradicional. Você não pode 'construir' um projeto compartilhado, é apenas código que é incorporado a outros projetos e, em seguida, construído lá.
Mas de alguma forma meu arquivo de solução foi atualizado como se o projeto compartilhado fosse algo que precisasse ser construído. Eu estou supondo então que a qualquer momento que eu estava tentando construir e não tinha alterado o código no projeto compartilhado, então percebi 'nada mudou, pule essas compilações'
Encontrei o projeto compartilhado no solution.sln
arquivo como:
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Api.Common", "Api.Common\Api.Common.shproj", "{EC580471-D78A-4509-AC46-BD565553AD60}"
..o que está bem. O que não está bem é que este projeto também apareceu da seguinte GlobalSection(ProjectConfigurationPlatforms) = postSolution
forma:
{EC580471-D78A-4509-AC46-BD565553AD60}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Release|Any CPU.Build.0 = Release|Any CPU
Eu removi essas quatro linhas do meu .sln
arquivo e agora as coisas parecem felizes novamente
Build > Configuration Manager: check as needed