Ne ho avuto uno strano che potrebbe valere la pena documentare tra le altre possibilità qui ..
Avevo aggiunto un progetto condiviso alla mia soluzione, con il codice utilizzato in due o tre degli altri progetti. Come saprai, i progetti condivisi sono solo codice e non sono realmente un progetto nel senso tradizionale del termine. Non puoi "costruire" un progetto condiviso, è solo codice che è incorporato negli altri progetti e quindi costruito lì.
Ma in qualche modo il mio file di soluzione era stato aggiornato come se il progetto condiviso fosse una cosa propria che doveva essere costruita. Immagino quindi che ogni volta che stavo cercando di compilare e non avevo cambiato il codice nel progetto condiviso, quindi ho pensato che "non è cambiato nulla, salta quelle build"
Ho trovato il progetto condiviso nel solution.sln
file come:
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Api.Common", "Api.Common\Api.Common.shproj", "{EC580471-D78A-4509-AC46-BD565553AD60}"
..che va bene. Quello che non va bene è che questo progetto è apparso anche in GlobalSection(ProjectConfigurationPlatforms) = postSolution
like:
{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
Ho rimosso quelle quattro righe dal mio .sln
file e ora le cose sembrano di nuovo felici
Build > Configuration Manager: check as needed