Visual Studio 2013 IntelliSense smette di funzionare per i controller ASP.NET MVC5


132

Sto affrontando uno strano problema nel mio progetto ASP.NET MVC 5 di Visual Studio 2013. All'improvviso, IntelliSense nelle classi Controller del progetto MVC 5 non funziona affatto.

Ho altri progetti di libreria di classi nella mia soluzione e IntelliSense sta lavorando in quei file di progetto di libreria di classi, ma il problema è solo all'interno del progetto MVC. Solitamente questo tipo di problemi viene risolto riavviando Visual Studio: non solo ho riavviato Visual Studio, ma ho anche riavviato il mio computer e il problema IntelliSense non si risolve affatto.

Ci sono altri passaggi che possono riportare indietro IntelliSense?

Risposte:


209

Chiudi Visual Studio. Elimina il file <ProjectName> .v12.suo. Riapri la soluzione.


Grazie per le informazioni. La prossima volta proverò questo trucco se il mio intellisense di Visual Studio smetterà di funzionare di nuovo.
Emran Hussain,

15
Ho scoperto che l'eliminazione del file suo risolve molti problemi. È come l'equivalente di Visual Studio di un riavvio. Grazie per avermi ricordato.
Grahamesd,

1
Sì ... risolto il problema per me adesso. Avevo una ProjectName.v12.suodimensione di 982 KB. Cancellato. Chiusa la soluzione Riapre la soluzione e ne è ProjectName.v12.suostata creata una nuova . Intellisense è tornato di nuovo, ma questo nuovo .suofile ha una dimensione di soli 500 KB. Molto interessante. Forse Microsoft dovrebbe risolvere questo cattivo comportamento? In qualche modo fa sì che VS perda Intellisense ed è davvero un dolore lavorare senza di essa. :)
Leniel Maccaferri,

3
Non ha funzionato per me. Ciò che ha funzionato per me è stato il ripristino delle mie impostazioni.
DougCouto,

Questo risolve il problema di IntelliSense ma allo stesso tempo perdi tutti i punti di interruzione, i segnalibri ecc.
Andreas,

68

Ripristino mie impostazioni o l'importazione precedentemente esportato, le impostazioni di lavoro, e il riavvio di Visual Studio ha funzionato: Tools > Import and Export Settings... > Reset all settings.

EDIT: Questo continua a succedere a me, sorprendentemente spesso in VS Express, e occasionalmente in VS Professional. Una cosa che ho notato in Pro, è che è successo dopo arresti imprevisti (quando l'IT forza un riavvio nel cuore della notte). Quindi potrebbe essere correlato a Visual Studio che non si chiude correttamente. La tecnica sopra descritta ha funzionato ogni volta.


1
Grazie, oggi ho avuto di nuovo il problema di Intellisense e la tua soluzione ha risolto il problema.
Emran Hussain,

1
Grazie, ha funzionato anche per me. Se leggi in fondo, prova questo prima di rimuovere tutte le estensioni.
Solo un altro Steve

: DI effettivamente rimosso prima tutte le mie estensioni. Comunque, ha funzionato!
Luis Lavieri,

questo risolto anche il mio problema
contractorwolf

Questa è stata l'opzione migliore. Eccellente.
Nelson Miranda,

35

Strumenti> Opzioni> Editor di testo> C #> Generale

Assicurati che "Elenco membri automatico" sia selezionato


Questo ha funzionato per me. L'eliminazione del file .suo ha funzionato in molte occasioni prima, ma questa volta non ha funzionato.
Craig,

Questo ha funzionato per me. Visual Studio 2013. L'IT ci ha passati a un nuovo dominio e ha perso tutte le impostazioni VS.
caldaie222

27

Ho trovato un modo per risolvere il problema. Cioè, 1. -> Rimuovi il progetto ASP.NET MVC dalla soluzione, 2. -> Quindi, aggiungi il progetto MVC alla soluzione.

Effettuando questi passaggi, riesco a ottenere nuovamente Intellisense. Ma non sono contento di questa soluzione, perché, la prossima volta che quando faccio doppio clic sul file Soluzione per aprire la soluzione, vedo che l'intellisense non funziona di nuovo. Vorrei sapere il vero motivo per cui si sta comportando così.

MODIFICARE:

Alla fine, ho capito che era un'estensione di Visual Studio di terze parti a causare il problema. Per scoprire quell'estensione, ho rimosso tutte le estensioni e poi le ho aggiunte una ad una e mi sono fermata dove ho trovato l'estensione colpevole che mi stava togliendo il sonno :).


1
Ne sto occupando da un mese e mi sta facendo impazzire. La rimozione e la lettura dalla soluzione (anche se un dolore) ha funzionato anche per me. Grazie!
NorthFork,

6
Nel mio caso, era l'estensione Xamarin, ma non voglio dire nulla di negativo su Xamarin, perché il loro supporto clienti è super eccellente. Non appena ho segnalato il problema, mi hanno fornito rapidamente la versione fissa. Inoltre, la versione più recente dell'estensione Xamarin non sembra avere più questo problema. Il mio punto è che qualsiasi versione specifica di un'estensione può causare tale problema, potrebbe essere necessario disinstallare le estensioni una per una per scoprire quale causa il problema. Ad esempio, una versione futura della buona estensione di oggi può causare anche questo problema. Dobbiamo stare attenti in quel caso.
Emran Hussain,

2
Scaricare il progetto e ricaricarlo ha funzionato anche per me grazie!
Rob,

1
Nel mio caso era l'estensione Xamarin. L'ha disinstallato e il problema è scomparso. Anche questa era l'ultima versione!
Guy Lowe,

1
Ho avuto lo stesso problema con l'estensione Xamarin, ma per qualche ragione solo con un particolare progetto. Era una versione di prova scaduta, quindi l'ho appena disinstallato e l'evidenziazione della sintassi è tornata.
Gnome

8

È possibile scaricare il progetto e ricaricare il progetto MVC dalla soluzione

  1. Fare clic con il tasto destro del mouse sul progetto MVC in Esplora soluzioni -> "Scarica progetto"
  2. Fare clic con il tasto destro del mouse sul progetto MVC in Esplora soluzioni -> "Ricarica progetto"

Dopo questo, Intellesense rielabora rapidamente.


Esattamente quello che ho scritto il 10 aprile, bello! stackoverflow.com/a/29556005/1879699
Andreas

6
  • Strumenti -> Opzioni
  • Editor di testo -> C # -> Intellisense
  • Assicurati che "Mostra elenco di completamento dopo aver digitato un carattere" sia selezionato

VS2013 completamento del codice intellisense


1
Questo ha funzionato per me. Non sono sicuro che l'installazione non sia stata selezionata per impostazione predefinita, ma quanto segue è stato deselezionato per me e questa è stata una nuova installazione. "Elenco automatico membri" "Informazioni sui parametri". Non stavo ottenendo nemmeno l'intellisense sui parametri del metodo. L'unico plugin che ho è GhostDoc
gcoleman0828,

@ gcoleman0828 Grazie! Questa è stata la risposta corretta per me con VS2013.
Rod Hartzell,

5

Non sono sicuro del motivo per cui si verifica, ma quando succede a me posso recuperare Intellisense semplicemente riavviando Visual Studio.

Hai ragione, è davvero fastidioso.


4

A volte il RESET delle impostazioni VS può aiutare:

STRUMENTI-> Procedura guidata di importazione ed esportazione delle impostazioni-> Ripristina tutte le impostazioni-> casella di controllo "No, ripristina solo le impostazioni, sovrascrivendo le mie impostazioni correnti" -> Avanti> Avanti> Avanti

Li avevo incasinati con RESHARPER, e questo mi ha aiutato.


2
beh, era così per me, scusa. Li avevo incasinati con le impostazioni di RESHARPER.
d.popov,

2
Upvoted. Resharper ha distrutto le mie impostazioni in passato.
Zac,

Questo è accettabile solo per qualcuno che non ha personalizzato nulla.
t3chb0t

3

Ho scoperto che il modo migliore per risolvere i problemi di IntelliSense è semplicemente scaricare il progetto in Esplora soluzioni e caricare nuovamente il progetto. Dopodiché IntelliSense funziona sempre per me e non perdo segnalibri, punti di interruzione o altre impostazioni.


1
Questo è il modo più semplice. TY
Cesare,

1

Ho scoperto che se la build fallisce, l'Intellisense sembra rompersi. Dopo aver corretto i miei errori di compilazione e ricostruito il progetto, Intellisense funzionerà dopo aver ricaricato il file Razor specifico.


1

Nel mio caso, il riavvio non ha funzionato.

Quindi ho fatto i seguenti strani passaggi:

  1. Chiusa la soluzione
  2. Ha aperto un'altra soluzione
  3. Verificato che intellisense ha funzionato in questa altra soluzione.
  4. Chiusa l'altra soluzione
  5. Infine, ha riaperto la prima soluzione.

E l'intellisenso ha funzionato di nuovo.


Questo non ha funzionato, ma è stato un buon passo per la risoluzione dei problemi per vedere se è il progetto o il visual studio stesso a causare il problema.
redwards510

1

Di solito ciò accade quando i buffer presentano un errore. Il più delle volte l'errore della cache locale viene cancellato quando si chiude un modulo di Windows, ad esempio, e si riapre ricaricandolo quindi in memoria. Molte delle soluzioni di cui sopra funzionano ma a volte è semplice come chiudere l'oggetto e il designer e riaprirlo.

Inoltre, puoi provare a forzare un ripristino entro

Ctrl + K, Ctrl + I mostra informazioni rapide Ctrl + Maiusc + Spazio mostra le informazioni sui parametri


1

Ho provato molte cose che non hanno funzionato. Alla fine, ho tagliato il codice negli appunti, ricreato il controller e incollato il codice. Problema risolto!


1

Anch'io ho lo stesso problema con Intellisense nel mio editor di testo.

ho solo il closefile example.cs che non fornisce Intellisense e riapro quella classe senza riavviare Visual Studio, funziona per me.

Nota: non ho lo stesso problema con tutto il file .CS in Esplora soluzioni


1

Uso VS 2013 e ho avuto lo stesso problema. La mia soluzione era aggiornare VS all'ultima versione. Il mio caso Aggiornamento 4. Il semplice riferimento nel progetto deve corrispondere all'assemblaggio in GAC su computer (SO). Intellisense proviene da VS non dal progetto.

Spero che sia utile per qualcuno.


1

... Ancora un'altra risposta - ma questa è stata la causa del mio dolore: avevo installato Developer Assistant che aveva funzionato bene ma improvvisamente ha smesso di fornire suggerimenti. Per farlo funzionare di nuovo:

opzioni -> assistente sviluppatore -> Intellisense -> Visual Studio Intellisense predefinito

Mi ci sono voluti 5 ore per scoprire che :(

HTH.


1
Tools->Options->Text Editor->C# (or All Languages)->General

selezionare la casella di controllo per enable Auto List Memberse Parameter Informationnel riquadro a destra.

Se non è selezionato, selezionarlo.



0

Ricevo esattamente la stessa cosa ogni volta che lavoro con un particolare progetto MVC5. Il riavvio di VS2013 non funziona. L'eliminazione dei suoi file non funziona. Il ripristino di tutte le impostazioni degli strumenti non funziona. L'unica cosa che funziona è rimuovere il progetto dalla soluzione e aggiungerlo di nuovo. Visto che devo farlo ogni giorno è davvero abbastanza fastidioso. Soprattutto quando ho impostato per riaprire gli ultimi file che avevo aperto, ho quindi bisogno di rintracciare quelli su cui stavo lavorando e riaprirli invece di spuntarli automagicamente ..


0

Sto usando VS 2013 con MVC 5. La soluzione per me era aggiungere quanto segue a Web.config:

<compilation debug="true" targetFramework="4.5.1">
  <assemblies>
    <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>
</compilation>

0

La soluzione di Rushonerok funziona benissimo per me.
Per chi non lo sapesse: <ProjectName> .v12.suo è un file nascosto nella cartella principale del progetto. È necessario impostare su "Mostra file nascosti" nel browser dei file per vederlo.


0

Finora alcune di queste soluzioni non hanno funzionato per me.

Ho la seguente soluzione alternativa

Dichiarare semplicemente il tipo che si desidera utilizzare esplicitamente in una nuova variabile e utilizzarlo al posto di Model.

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain

0

Per risolvere questo, ho chiuso Visual Studio Express 2013 e ho riaperto la soluzione ma facendo doppio clic sul suo .slnfile direttamente dal file system. Aprendolo dalla Pagina iniziale i miei controller intellisense erano rotti.



0

A volte lo chiudi per errore. Prova ctrl+spaceWindows o cmd+spaceMac per accenderlo.


0

So di essere un po 'in ritardo, ma l'aggiunta di questo al mio App.configfile ha funzionato!

<system.web>
    <compilation>
        <assemblies>
            <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        </assemblies>
    </compilation>
</system.web>
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.