Lorsque j'ouvre ma solution, je reçois un dialogue avec cet avertissement. La solution (une application Web, un projet de classe) est construite sans erreur.
Comment puis-je déterminer quelles propriétés sont à l'origine du problème et résoudre l'erreur?
Je viens de résoudre un problème similaire avec une solution VS2010 avec 35 projets ... La cause était une duplication
GlobalSection(TeamFoundationVersionControl)
section dans le fichier de solution. J'ai fermé la solution, supprimé la configuration dupliquée GlobalSection (TeamFoundationVersionControl), rechargé la solution et le message d'avertissement avait disparu.
Si ce n’est pas votre problème, compte tenu que vous n’avez que 2 projets, j’abandonnerais le fichier de la solution décomposée, créerais une nouvelle solution et rajouterais vos deux projets ...
On dirait que cet avertissement a plusieurs raisons. Je l’avais eu parce que mon fichier de solution SccNumberOfProjects = 4
alors qu’il n’y en avait que 3.
La meilleure solution est de forcer le SV à régénérer les configs. Pour faire ça:
Je viens de corriger un problème similaire dans VS2012 avec 44 projects.
La cause était une combinaison d'une section GlobalSection(TeamFoundationVersionControl)
dupliquée (réponse de la Boycs), mais plusieurs projets ont également été dupliqués - ainsi que quelques références à des projets récemment supprimés - dans la section GlobalSection(TeamFoundationVersionControl)
que j'ai conservée.
Une fois que je m'étais assuré que tous les projets référencés correspondaient 1: 1 aux projets réels de ma solution, l'avertissement avait disparu.
De plus: je soupçonne que la plupart de ces problèmes auraient pu être évités si une attention particulière avait été accordée au .sln lors de la création de succursales et des fusions, mais qui sait ce que VS pense parfois ...
J'ai eu une multitude des erreurs ci-dessus… .. J'ai renommé le projet, enregistré fermé, rouvert a changé le nom. Cela recrée le fichier .sln et, dans mon cas, a supprimé tous les éléments supplémentaires.
Dans VS 2015, j'avais deux de ces sections " GlobalSection (TeamFoundationVersionControl) = preSolution "
Le premier incluait le dernier projet ajouté à la solution, pas le second (près de la fin du fichier de solution). Après avoir supprimé le second, la solution a été ouverte dans VS 2015 sans aucune erreur.
Pour moi, le problème était les espaces vides (dus au copier-coller) à la fin de chaque ligne. En les supprimant, je n'ai plus eu l'erreur.
Les autres réponses expliquent déjà comment résoudre le problème ... Je peux peut-être vous aider à ne plus avoir le problème:
Comment j’ai eu le problème Notre fichier de solution s’est mélangé lorsque j’y ai ajouté un nouveau projet, tandis qu’un autre développeur a également ajouté un nouveau projet et validé ses modifications (ce que je n’ai pas reçu sur mon système local ). Quand j'ai commencé à valider mes modifications, j'ai dû fusionner le fichier .sln, où je me suis évidemment trompé :-)
Ce que j'ai appris
Les fichiers de solution sont terribles à fusionner. Si vous ajoutez un projet, procédez comme suit: 1. Obtenez la dernière version 2. Ajoutez votre projet 3. S'engager
Si votre fichier de solution est en attente de modification mais que vous ne voyez pas de changement dans le mode de comparaison, vous devez appuyer sur «Enregistrer tout». Lors de l'ajout de votre nouveau projet, VisualStudio a également modifié la solution. Cependant, il s'agit d'un changement non enregistré pour le moment.
Résolution d'un message d'erreur identique dans VS2012 en suivant l'exemple de Boycs. Pour moi, le problème était deux blocs GlobalSection(SolutionConfigurationPlatforms) = preSolution
superflus au bas de mon fichier SLN.
Mise à jour VS2015 3. [GlobalSection (TeamFoundationVersionControl) = preSolution] a été dupliqué dans le fichier de solution . Le duplicata inférieur contenait un projet qui avait déjà été supprimé…. causé par un problème de fusion précédent.
j'ai corrigé un problème similaire dans vs2012.
dans mon cas, le problème était que la valeur de la propriété SccProjectName0 dans GlobalSection dans le fichier MySolutionName.sln était vide.
je l'ai résolu en définissant la valeur SccProjectName0 avec une copie de cette valeur de chaîne provenant d'une autre solution et en remplaçant le nom du projet dans la chaîne par le nom actuel (BTW - si le nom de votre projet est inséré dans un espace ('', remplacer par '\ u0020').
*
dans mon cas, le problème commence après que j'aie ouvert par erreur une solution contrôlée par TFS avec l'ancien fichier MySolutionName.sln de la même solution à partir du moment où cette solution était contrôlée par VSS.
VS 2019 - J'ouvrais un projet VS 2017 pour la première fois dans VS 2019. Dans la fenêtre Sortie, cliquez sur "Afficher la sortie de:" DDL et passez en revue vos options car des informations d'erreur supplémentaires pourraient s'afficher.
Dans mon cas, la solution consistait simplement à reconfigurer mes mappages de contrôle de source pour 2019.
Je peux ajouter une solution supplémentaire. Une fusion suspecte signifiait que l'une des strophes SccProjectUniqueName/SccProjectName/SccLocalPath de la section GlobalSection (TeamFoundationVersionControl) n'était pas unique, même si SccNumberOfProjects était correct. Correction de la numérotation, le message d'erreur a disparu.
Vérifiez votre SccNumberOfProjects dans votre fichier .sln , il peut être différent du numéro de projet actuel.