Avviso di Visual Studio: "Impossibile leggere alcune delle proprietà associate alla soluzione"


160

Quando apro la mia soluzione, visualizzo una finestra di dialogo con questo avviso. La soluzione (un'app Web, un progetto di classe) viene creata senza errori.

Come posso determinare quali proprietà stanno causando il problema e risolvere l'errore?

Risposte:


281

Ho appena risolto un problema simile con una soluzione VS2010 con 35 progetti ... La causa era una duplicazione

GlobalSection(TeamFoundationVersionControl)

sezione nel file della soluzione. Ho chiuso la soluzione, rimosso la duplice configurazione GlobalSection (TeamFoundationVersionControl) e ricaricato la soluzione e il messaggio di avviso era sparito.

Se questo non è il problema per te, considerando che hai solo 2 progetti, abbandonerei il file della soluzione rotto, creerei una nuova soluzione e aggiungerei di nuovo i tuoi due progetti ...


6
Ha avuto lo stesso problema con VS2012, questa soluzione ha funzionato. Grazie!
David Airapetyan,

4
È sicuro supporre che GlobalSection (TeamFoundationVersionControl) che dovrebbe essere eliminato sia quello in basso?
frostshoxx,

4
Ho avuto lo stesso problema e ho appena rimosso quello in basso. Ha risolto il problema. Sembra che la fusione a volte causi questo.
MaiOM

12
Era quello in basso per me (era chiaramente obsoleto). Ho il sospetto che VS usi il primo che trova. Nel mio caso, ciò è stato causato da un'unione TFS.
Igby Largeman,

2
Stesso problema in VS2013 con GlobalSection duplicato - risolto rimuovendo
Mark Hosang

31

Sembra che ci siano diverse ragioni per questo avviso. Lo stavo ottenendo perché il mio file di soluzione SccNumberOfProjects = 4quando c'erano solo 3.


25

La soluzione migliore è forzare il VS a rigenerare le configurazioni. Per fare questo:

  1. Apri il file sln con un editor di testo.
  2. Scorri verso il basso fino a raggiungere l'ultimo elemento "EndProject".
  3. Elimina tutto dopo.
  4. Salva, chiudi e ricostruisci la soluzione e tutto sarà rigenerato.

Questa soluzione è stata perfetta per la mia situazione. Stavo ottenendo due errori simili: The following property is missing or has incorrect value: SccLocalPath63e The following property is missing or has incorrect value: SccLocalPath64
user919426

2
Questa soluzione ha funzionato per me in VS 2017. In realtà lo rigenera quando viene aperto il file sln. Si noti che EndProject è una parola.
Varun Sharma,

Questa è stata la soluzione per me. L'unica differenza nel file di soluzione era SolutionGuid.
ADH,

2
Questo ha funzionato per me in VS 2017. L'unica cosa che devo aggiungere è ... se stai usando le cartelle delle soluzioni ... dovrai ricollocare i tuoi progetti negli "slot" corretti
Prigioniero ZERO

1
Questo ha funzionato per me in VS 2019. Avevo sezioni duplicate come menzionato in altre soluzioni, ma quando le avrei rimosse, sarebbero tornate. Questo è stato l'unico che ha funzionato.
fehays,

8

Ho appena risolto un problema simile in VS2012 con 44 progetti.

La causa era una combinazione di una GlobalSection(TeamFoundationVersionControl)sezione duplicata (una risposta alla Boycs), ma avevo anche duplicato diversi progetti, oltre a alcuni riferimenti a progetti che erano stati rimossi di recente, all'interno della GlobalSection(TeamFoundationVersionControl)sezione che avevo tenuto.

Una volta assicurato che tutti i progetti referenziati corrispondessero a 1: 1 con i progetti reali nella mia soluzione, l'avvertimento è sparito.

A parte: ho il sospetto che la maggior parte di questi problemi avrebbe potuto essere evitata con una maggiore attenzione prestata alla .sln durante il ramo e le fusioni, ma chissà cosa pensa VS a volte ...


5

Ho avuto una moltitudine di errori sopra. Ho rinominato il progetto, salvato chiuso, riaperto cambiato il nome indietro. Questo ricrea il file .sln e nel mio caso ha eliminato tutti gli elementi extra.


La soluzione più semplice qui. Non preoccuparti di .slncercare gli errori.
Jonathan Landrum,

Potresti approfondire un po 'di più. Alcuni utenti potrebbero non capire. Intendi rinominarlo in explorer o Visual Studio o nel file attuale?
iTechy,

1
Fallo in Visual Studio, fai clic con il pulsante destro del mouse sul progetto, cambi il nome in qualsiasi cosa, quindi salvi e chiudi. Riaprire e tornare all'originale, salvare ed uscire. riaprire la soluzione e l'errore dovrebbe essere sparito.
CThin,

2

Risolto un messaggio di errore identico in VS2012 seguendo l'esempio di Boycs. Per me, il problema erano due GlobalSection(SolutionConfigurationPlatforms) = preSolutionblocchi estranei nella parte inferiore del mio file SLN.


2

Per me il problema erano gli spazi vuoti (dovuti al copia-incolla) alla fine di ogni riga. Rimuovendoli non ho più riscontrato l'errore.


2

In VS 2015, avevo due di queste sezioni " GlobalSection (TeamFoundationVersionControl) = preSolution "

Il primo includeva l'ultimo progetto aggiunto alla soluzione, il secondo (vicino alla fine del file della soluzione) no. Dopo aver eliminato il secondo, la soluzione si è aperta in VS 2015 senza errori.


1

Le altre risposte spiegano già come risolvere il problema. Forse posso aiutare a non riavere il problema:

Come ho riscontrato il problema Il nostro file di soluzione si è confuso quando ho aggiunto un nuovo progetto, mentre un altro sviluppatore ha anche aggiunto un nuovo progetto e ha eseguito il commit delle sue modifiche (che non ho ottenuto nel mio sistema locale). Quando ho iniziato a eseguire il commit delle mie modifiche, ho dovuto unire il file .sln, dove ovviamente ho sbagliato :-)

Quello che ho imparato

I file della soluzione sono terribili da unire. Se aggiungi un progetto, procedi come segue: 1. Scarica l'ultima versione 2. Aggiungi il tuo progetto 3. Impegna

Se vedi il file della soluzione in attesa di modifiche, ma non vedi una modifica nella modalità di confronto, devi premere "Salva tutto". Durante l'aggiunta del nuovo progetto, VisualStudio ha anche modificato la soluzione. Tuttavia, al momento si tratta di una modifica non salvata.


1

Controlla il tuo SccNumberOfProjects nel tuo file .sln , potrebbe essere diverso dal tuo attuale numero di progetto.


0

ho risolto un problema simile in vs2012.

nel mio caso il problema era che il valore della proprietà SccProjectName0 all'interno di GlobalSection nel file MySolutionName.sln era vuoto.

l'ho risolto impostando il valore SccProjectName0 con la copia di questo valore di stringa da un'altra soluzione e sostituendo il nome del progetto nella stringa con quello corrente (BTW - se il nome del tuo progetto come spazio in esso (''), è necessario sostituire con '\ u0020').

*

nel mio caso il problema inizia dopo che ho aperto per errore la soluzione controllata da TFS con il vecchio file MySolutionName.sln della stessa soluzione da quando questa soluzione è stata controllata da VSS.


0

Aggiornamento VS2015 3. [GlobalSection (TeamFoundationVersionControl) = preSolution] è stato duplicato nel file della soluzione. Il duplicato in basso conteneva un progetto che è stato precedentemente rimosso ... quindi la rimozione di quel duplicato ha risolto il problema. Penso che la duplicazione sia stata causata da un precedente problema di fusione.


0

Posso aggiungere un'altra soluzione possibile: un'unione incerta ha significato che una delle stanze SccProjectUniqueName / SccProjectName / SccLocalPath all'interno della sezione GlobalSection (TeamFoundationVersionControl) aveva numeri che non erano unici, anche se SccNumberOfProjects era corretto. Risolto il problema con la numerazione, il messaggio di errore è andato via.


0

VS 2019 - Stavo aprendo un progetto VS 2017 per la prima volta in VS 2019. Nella finestra Output, fai clic sul DDL "Mostra output da:" ed esamina le opzioni perché potresti visualizzare ulteriori informazioni sull'errore.

Nel mio caso, la soluzione era semplicemente riconfigurare i miei mapping di controllo del codice sorgente per il 2019.

  • Entra in Team Explorer
  • Fai clic sul pulsante Gestisci connessioni (plug)
  • Fare clic sul collegamento Gestisci connessioni e Connetti a un progetto ...
  • ...

-1

Ho avuto lo stesso problema e la mia soluzione è:

  1. Apri la soluzione in VS
  2. Impostare la piattaforma della soluzione su predefinita
  3. Salvarla
  4. Chiudi il VS
  5. Apri il file .sln in Notepad ++ (o in qualsiasi altro editor)
  6. Elimina tutti gli altri elementi della piattaforma della soluzione da qualsiasi luogo
  7. (ad esempio: {73E03C8F-1F76-45E2-9D45-FA040A63F0AA}. Rilascio | Any CPU.Build.0 = Release | Any CPU)
  8. Salvalo e riapri la soluzione.

Questo funziona per me.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.