web-dev-qa-db-fra.com

Avertissement Visual Studio: "Certaines des propriétés associées à la solution n'ont pas pu être lues"

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?

141
chris

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 ...

265
Boycs

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.

26
bicbmx

La meilleure solution est de forcer le SV à régénérer les configs. Pour faire ça:

  1. Ouvrez le fichier sln avec un éditeur de texte. 
  2. Faites défiler la liste jusqu'au dernier élément "Fin du projet".
  3. Supprimer tout après cela.
  4. Enregistrez, fermez et reconstruisez la solution et tout sera régénéré.
13
Arvand

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 ...

8
Ben Mosher

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. 

5
CThin

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. 

2
Papa Stahl

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.

2
papaiatis

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.

1
TheWho

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.

1
BitPusher16

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.

0
Moutono

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.

0
Yossi B

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.

  • Allez dans Team Explorer
  • Cliquez sur le bouton Gérer les connexions (plug)
  • Cliquez sur le lien Gérer les connexions et connectez-vous à un projet ...
  • ...
0
GrayDwarf

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.

0
julianz

Vérifiez votre SccNumberOfProjects dans votre fichier .sln , il peut être différent du numéro de projet actuel.

0
Ali Karaca