2013-08-17 7 views
10

Ho notato che la funzione di completamento automatico in Visual Studio non funziona più correttamente una volta che il mio progetto ha raggiunto una certa dimensione (nel mio caso ~ 4.100 righe di codice). Ho anche notato che le prestazioni diminuiscono anche quando aumenta il numero di librerie di terze parti (gli spazi dei nomi e gli attributi di classe e i metodi non sono più visibili).Aggiornamento del database di completamento automatico (IntelliSense) in Visual Studio

Esiste un modo per aggiornare manualmente il database di completamento automatico o crearne uno nuovo per un progetto esistente?

Attualmente sto lavorando in Visual Studio 2008, ma ho riscontrato questo problema in Visual Studio 2010 pure.

+0

Eventuali duplicati: [VS2010 IDE alcuni IntelliSense non funziona] (http://stackoverflow.com/questions/4830397/vs2010 -IDE-some-intellisense-is-not-working). – IInspectable

+2

Intellisense è stato rotto per sempre. Rimuovere il file NCB e funzionerà per un po '. –

+2

O nel caso di VS2010 e versioni successive, il file .sdf. MS utilizza un database SQL Desktop per il proprio database intellisense a partire da VS2010. Chiudere la soluzione, eliminare il file .sdf, quindi riaprire la soluzione. Lasciatelo cuocere per un po 'e dovrebbe eseguire la scansione del progetto (e * di tutte le intestazioni * comprese le intestazioni di sistema). – WhozCraig

risposta

5

Chiudere Visual Studio e accedere alla cartella del progetto. Il file * .sdf contiene il database intellisense- se elimini questi file e riapri il tuo progetto in Visual Studio, ricostruisce il cache.

L'eliminazione del file sdf ha risolto il problema per me.

A volte lavorare con una soluzione di grandi dimensioni (principalmente progetti C++) diventa insopportabilmente lento. Per risolvere il problema è necessario chiudere la soluzione e passare a eliminare il file .SDF. Dopo di che ritorna normale, per circa a settimana, o così fino a quando non è necessario farlo di nuovo.

La causa di fondo è che il file SDF viene frammentato e, in base alle xperf profilazione che ho fatto, VS a volte fare 20.000 letture casuali da esso quando si cambia tra il debug e rilascio. Mettendo i file SDF su un SSD risolve il problema ma non dovrebbe essere necessario. VS ha bisogno di usare il file SDF in modo più efficiente e non blocca mai le operazioni di SDF .

Fonte: https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2255455-fix-the-delete-sdf-file-problem

+11

Sotto VS2015 e 2017 ora crea una cartella .vs nella stessa cartella della soluzione. Questa è la cartella che contiene tra le altre cose l'intellisense. L'eliminazione risolve il problema. – korbes

+4

I secondo l'eliminazione della cartella '.vs'. Questo a volte è anche una soluzione ai problemi di PCH IntelliSense, ma attenzione: perderai le configurazioni del layout della finestra, ecc. – user35443

0

In VS2017 spesso mi imbatto in questa situazione quando uso interoperabilità chiamare CPP da C#, quando qualcosa sta cambiando sul lato CPP .. per esempio argomenti del costruttore

scaricare e ricaricare il progetto CPP nella soluzione aiuta a risolvere le linee rosse ..