Aviso do Visual Studio: "Não foi possível ler algumas das propriedades associadas à solução"


160

Quando abro minha solução, recebo uma caixa de diálogo com este aviso. A solução (um aplicativo Web, um projeto de classe) é criada sem erros.

Como posso determinar quais propriedades estão causando o problema e resolver o erro?

Respostas:


281

Corrigi um problema semelhante com uma solução VS2010 com 35 projetos ... A causa foi uma duplicação

GlobalSection(TeamFoundationVersionControl)

seção no arquivo de solução. Fechei a solução, removi a configuração duplicada do GlobalSection (TeamFoundationVersionControl) e recarreguei a solução e a mensagem de aviso desapareceu.

Se esse não é o problema para você, considerando que você tem apenas dois projetos, eu descartaria o arquivo da solução interrompida, crie uma solução nova e adicione novamente seus dois projetos ...


6
Teve o mesmo problema com o VS2012, esta solução funcionou. Obrigado!
— precisa saber é o seguinte

4
É seguro assumir que o GlobalSection (TeamFoundationVersionControl) que deve ser excluído é o mais baixo?
— frostshoxx

4
Eu tive o mesmo problema e acabei de remover o inferior. Resolveu o problema. Parece que a fusão às vezes causa isso.
— MaiOM

12
Foi o último para mim (estava claramente desatualizado). Suspeito que o VS use o primeiro que encontrar. No meu caso, isso foi causado por uma mesclagem de TFS.
— Igby Largeman

2
O mesmo problema no VS2013 com o GlobalSection duplicado - corrigido removendo
— Mark Hosang

31

Parece que há vários motivos para esse aviso. Eu estava recebendo porque meu arquivo de solução SccNumberOfProjects = 4quando havia apenas 3.


25

A melhor solução é forçar o VS a regenerar as configurações. Para fazer isso:

  1. Abra o arquivo sln com um editor de texto.
  2. Role para baixo até chegar ao último elemento "EndProject".
  3. Exclua tudo depois disso.
  4. Salve, feche e reconstrua a solução e tudo será regenerado.

Esta solução foi perfeita para a minha situação. Eu estava recebendo dois erros semelhantes: The following property is missing or has incorrect value: SccLocalPath63e The following property is missing or has incorrect value: SccLocalPath64
— user919426

2
Esta solução funcionou para mim no VS 2017. Na verdade, ela gera novamente quando o arquivo sln é aberto. Observe que EndProject é uma palavra.
— Varun Sharma

Essa foi a solução para mim. A única diferença no arquivo da solução foi o SolutionGuid.
— ADH

2
Isso funcionou para mim no VS 2017. a única coisa que tenho a acrescentar é ... se você estiver usando o Solution Folders ... terá que colocar seus projetos de volta nos "slots" corretos
— Prisioner ZERO

1
Isso funcionou para mim no VS 2019. Eu tinha seções duplicadas conforme mencionado em outras soluções, mas quando as removia, elas voltavam. Este foi o único que funcionou.
— fehays

8

Corrigi um problema semelhante no VS2012 com 44 projetos.

A causa foi uma combinação de uma GlobalSection(TeamFoundationVersionControl)seção duplicada (a resposta de la Boycs), mas eu também tive vários projetos duplicados - assim como algumas referências a projetos que foram removidos recentemente - dentro doGlobalSection(TeamFoundationVersionControl) seção que mantinha.

Depois de garantir que todos os projetos referenciados correspondessem 1: 1 aos projetos reais em minha solução, o aviso foi embora.

Além disso: suspeito que a maioria desses problemas poderia ter sido evitada com mais atenção ao .sln durante a ramificação e a consolidação de fusões, mas quem sabe o que o VS está pensando às vezes ...


5

Eu tive uma infinidade dos erros acima. Renomeei o projeto, salvei fechado, reabrei e mudei o nome de volta. Isso recria o arquivo .sln e, no meu caso, removeu todos os itens extras.


Correção mais fácil aqui. Não se preocupe em .slnprocurar os erros.
— Jonathan Landrum

Você poderia expandir um pouco mais isso? Alguns usuários podem não entender. Você quer renomeá-lo no explorer, no Visual studio ou no arquivo real?
— iTechy

1
Faça isso no Visual Studio, clique com o botão direito do mouse no projeto, altere o nome para qualquer coisa e salve e saia. Reabra e volte ao original, salve e saia. reabra a solução e o erro deve desaparecer.
— CThin

2

Resolvida uma mensagem de erro idêntica no VS2012, seguindo o exemplo de Boycs. Para mim, o problema eram dois GlobalSection(SolutionConfigurationPlatforms) = preSolutionblocos estranhos na parte inferior do meu arquivo SLN.


2

Para mim, o problema eram espaços vazios (devido a copiar e colar) no final de cada linha. Ao removê-los, não recebi o erro novamente.


2

No VS 2015, eu tinha duas dessas seções " GlobalSection (TeamFoundationVersionControl) = preSolution "

O primeiro incluiu o projeto mais recente adicionado à solução, o segundo (próximo ao final do arquivo da solução) não. Após excluir o segundo, a solução foi aberta no VS 2015 sem erros.


1

As outras respostas já explicam como corrigir o problema. Talvez eu possa ajudar a não ter o problema novamente:

Como eu consegui o problema Nosso arquivo de solução se confundiu quando adicionei um novo projeto a ele, enquanto outro desenvolvedor também adicionou um novo projeto e confirmou suas alterações (o que eu não obtive no meu sistema local). Quando comecei a confirmar minhas alterações, tive que mesclar o arquivo .sln, onde obviamente errei :-)

O que eu aprendi

Os arquivos de solução são terríveis de mesclar. Se você adicionar um projeto, faça o seguinte: 1. Obtenha a versão mais recente 2. Adicione seu projeto 3. Confirme

Se o seu arquivo de solução estiver com alterações pendentes, mas não houver uma alteração no modo de comparação, pressione 'Salvar tudo'. Ao adicionar seu novo projeto, o VisualStudio também alterou a solução. No entanto, essa é uma alteração não salva no momento.


1

Verifique seu SccNumberOfProjects no seu arquivo .sln . Ele pode ser diferente do número real do projeto.


0

Corrigi problema semelhante no vs2012.

no meu caso, o problema era que o valor da propriedade SccProjectName0 dentro de GlobalSection no arquivo MySolutionName.sln estava vazio.

Eu o resolvi definindo o valor SccProjectName0 com cópia desse valor de string de outra solução e substituindo o nome do projeto na string pelo atual (BTW - se o nome do projeto estiver como espaço nele (''), ele precisará substitua por '\ u0020').

*

no meu caso, o problema começou depois que eu abri por engano a solução controlada pelo TFS com o antigo arquivo MySolutionName.sln da mesma solução desde o momento em que essa solução foi controlada pelo VSS.


0

Atualização 3. do VS2015 [GlobalSection (TeamFoundationVersionControl) = preSolution] foi duplicada no arquivo de solução. A duplicata inferior continha um projeto que foi removido anteriormente ... portanto, a remoção dessa duplicata corrigiu o problema. Penso que a duplicação foi causada por um problema de fusão anterior.


0

Posso adicionar mais uma solução possível - uma mesclagem desonesta significava que uma das sub-rotinas SccProjectUniqueName / SccProjectName / SccLocalPath dentro da seção GlobalSection (TeamFoundationVersionControl) tinha números que não eram exclusivos, mesmo que o SccNumberOfProjects estivesse correto. Corrigida a numeração, a mensagem de erro desaparecia.


0

VS 2019 - Eu estava abrindo um projeto do VS 2017 pela primeira vez no VS 2019. Na janela Saída, clique no DDL "Mostrar saída de:" e revise suas opções, pois você pode ver informações adicionais sobre erros.

No meu caso, a solução foi reconfigurar apenas meus mapeamentos de controle de origem para 2019.

  • Entre no Team Explorer
  • Clique no botão Gerenciar conexões (plug)
  • Clique no link Gerenciar conexões e Conecte-se a um projeto ...
  • ...

-1

Eu tive o mesmo problema e minha solução é:

  1. Abra a solução no VS
  2. Defina a plataforma de solução como padrão
  3. Salve isso
  4. Feche o VS
  5. Abra o arquivo .sln no Notepad ++ (ou em qualquer outro editor)
  6. Exclua todos os outros itens da Solution Solution de qualquer lugar
  7. (por exemplo: {73E03C8F-1F76-45E2-9D45-FA040A63F0AA} .Release | Any CPU.Build.0 = Release | Any CPU)
  8. Salve-o e reabra a solução.

Isso funciona para mim.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.