J'en ai eu un étrange qui vaut peut-être la peine d'être documenté parmi les autres possibilités ici.
J'avais ajouté un projet partagé à ma solution, avec du code utilisé dans deux ou trois des autres projets. Comme vous le savez, les projets partagés ne sont que du code, et pas vraiment un projet au sens traditionnel du terme. Vous ne pouvez pas «construire» un projet partagé, c'est juste du code qui est intégré dans les autres projets, puis construit là-bas.
Mais d'une manière ou d'une autre, mon fichier de solution avait été mis à jour comme si le projet partagé était sa propre chose qui devait être construite. Je suppose que chaque fois que j'essayais de construire et que je n'avais pas changé le code dans le projet partagé, alors il se disait que `` rien n'a changé, ignorez ces versions ''
J'ai trouvé le projet partagé dans le solution.sln
fichier comme:
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Api.Common", "Api.Common\Api.Common.shproj", "{EC580471-D78A-4509-AC46-BD565553AD60}"
..ce qui est bien. Ce qui ne va pas, c'est que ce projet est également apparu GlobalSection(ProjectConfigurationPlatforms) = postSolution
comme suit:
{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
J'ai supprimé ces quatre lignes de mon .sln
fichier, et maintenant les choses semblent à nouveau heureuses
Build > Configuration Manager: check as needed