Visual Studio 2013 IntelliSense deja de funcionar para los controladores ASP.NET MVC5

132

Estoy enfrentando un problema extraño en mi proyecto Visual Studio 2013 ASP.NET MVC 5. De repente, las clases IntelliSense en el controlador del proyecto MVC 5 no funcionan en absoluto.

Tengo otros proyectos de biblioteca de clases en mi solución e IntelliSense está trabajando en esos archivos de proyecto de biblioteca de clases, pero el problema solo está dentro del proyecto MVC. Por lo general, este tipo de problemas se resuelve reiniciando Visual Studio: no solo reinicié Visual Studio, sino que también reinicié mi computadora y el problema de IntelliSense no se está solucionando en absoluto.

¿Hay algún otro paso que pueda recuperarme IntelliSense?

Emran Hussain
fuente

Respuestas:

209

Cierra Visual Studio. Elimine el archivo <ProjectName> .v12.suo. Vuelva a abrir la solución.

Rush Frisby
fuente
Gracias por la info. Probaré este truco la próxima vez si mi inteligencia de Visual Studio deja de funcionar nuevamente.
Emran Hussain
15
Descubrí que eliminar el archivo suo soluciona muchos problemas. Es como el equivalente de Visual Studio de un reinicio. Gracias por recordarme.
grahamesd
1
Sí ... solucionó el problema para mí ahora mismo. Mi ProjectName.v12.suotenía 982 KB de tamaño. Lo eliminó Cerró la solución. Reabrió la solución y ProjectName.v12.suose creó una nueva . Intellisense está de vuelta nuevamente, pero este nuevo .suoarchivo ahora tiene solo 500 KB de tamaño. Muy interesante. ¿Quizás Microsoft debería arreglar este mal comportamiento? De alguna manera, hace que VS pierda Intellisense y es realmente un trabajo trabajar sin él. :)
Leniel Maccaferri
3
No funciono para mi. Lo que funcionó para mí fue restablecer mi configuración.
DougCouto
Esto soluciona el problema de IntelliSense, pero también pierde todos los puntos de interrupción, marcadores, etc. al mismo tiempo.
Andreas
68

Restablecimiento de la configuración de mi o importar exportados previamente, la configuración de trabajo, y reiniciar Visual Studio funcionó: Tools > Import and Export Settings... > Reset all settings.

EDITAR: Esto me sigue sucediendo, sorprendentemente a menudo en VS Express, y ocasionalmente en VS Professional. Una cosa que noté en Pro es que ha sucedido después de un apagado inesperado (cuando TI obliga a reiniciar en medio de la noche). Por lo tanto, puede estar relacionado con que Visual Studio no se cierre correctamente. La técnica descrita anteriormente ha funcionado siempre.

Jeremy Cook
fuente
1
Gracias, hoy tuve el problema Intellisense nuevamente y su solución resolvió el problema.
Emran Hussain
1
Gracias, esto también funcionó para mí. Si lee hasta el final, intente esto antes de eliminar todas sus extensiones.
Solo otro Steve
: DI eliminó todas mis extensiones primero. De todos modos, funcionó!
Luis Lavieri
esto solucionó mi problema también
contractorwolf
Esta fue la mejor opción. Excelente.
Nelson Miranda
35

Herramientas> Opciones> Editor de texto> C #> General

Asegúrese de que la opción "Lista automática de miembros" esté marcada

phil
fuente
Esto funcionó para mí. Eliminar el archivo .suo ha funcionado en muchas ocasiones antes, pero esta vez no lo hizo.
Craig
Esto funcionó para mí. Visual Studio 2013. IT nos cambió a un nuevo dominio y perdió toda la configuración de VS.
boilers222
27

He encontrado una forma de resolver el problema. Es decir, 1. -> Elimine el Proyecto ASP.NET MVC de la Solución, 2. -> Luego, agregue el Proyecto MVC nuevamente a la Solución.

Al seguir estos pasos, puedo obtener el Intellisense nuevamente. Sin embargo, no estoy contento con esta solución, porque, la próxima vez que haga doble clic en el archivo Solución para abrir la solución, veo que el intellisense no está funcionando nuevamente. Me gustaría saber la verdadera razón por la que se comporta así.

EDITAR:

Finalmente, descubrí que era una extensión de estudio visual de terceros que estaba causando el problema. Para descubrir esa extensión, eliminé todas las extensiones y luego las agregué una por una y paré donde encontré la extensión culpable que me estaba quitando el sueño :).

Emran Hussain
fuente
1
He estado lidiando con esto durante un mes y me está volviendo loco. Eliminar y leer de la solución (aunque un dolor) también funcionó para mí. ¡Gracias!
NorthFork
66
En mi caso, era la extensión de Xamarin, pero no quiero decir nada malo sobre Xamarin, porque su atención al cliente es excelente. Tan pronto como informé el problema, me proporcionaron la versión fija rápidamente. Además, la versión más reciente de la extensión Xamarin ya no parece tener ese problema. Mi punto es que la versión específica de cualquier extensión puede causar tal problema, es posible que necesitemos desinstalar las extensiones una por una para descubrir cuál está causando el problema. Por ejemplo, una versión futura de la buena extensión de hoy también puede causar ese problema. Necesitamos tener cuidado en ese caso.
Emran Hussain
2
¡Descargar el proyecto y volver a cargarlo funcionó para mí también, gracias!
Rob
1
En mi caso fue la extensión de Xamarin. Lo desinstalé y el problema desapareció. ¡Esta fue la última versión también!
Guy Lowe
1
Tuve el mismo problema con la extensión Xamarin, pero por alguna razón solo con un proyecto en particular. Era una prueba caducada, así que simplemente la desinstalé y el resaltado de sintaxis regresó.
GnomeCubed
8

Puede descargar el proyecto y volver a cargar el proyecto MVC desde la solución

  1. Haga clic derecho en el proyecto MVC en el explorador de soluciones -> "Descargar proyecto"
  2. Haga clic derecho en el proyecto MVC en el explorador de soluciones -> "Recargar proyecto"

Después de esto, el Intellesense vuelve a trabajar rápidamente.

ArDumez
fuente
Excatly lo que escribí el 10 de abril, ¡bien! stackoverflow.com/a/29556005/1879699
Andreas
6
  • Herramientas -> Opciones
  • Editor de texto -> C # -> Intellisense
  • Asegúrese de que la opción "Mostrar lista de finalización después de escribir un carácter" esté marcada

VS2013 finalización del código intellisense

Sherif Hamdy
fuente
1
Esto funcionó para mí. No estoy seguro de si la instalación predeterminada no estaba marcada, pero las siguientes no estaban marcadas para mí y esta fue una instalación nueva. "Lista automática de miembros" "Información de parámetros". Tampoco estaba obteniendo el intellisense sobre los parámetros del método. El único complemento que tengo es GhostDoc
gcoleman0828
@ gcoleman0828 ¡Gracias! Esta fue la respuesta correcta para mí con VS2013.
Rod Hartzell
5

No estoy seguro de por qué ocurre, pero cuando me sucede puedo recuperar Intellisense simplemente reiniciando Visual Studio.

Tienes razón, es realmente molesto.

JWilson
fuente
4

A veces, RESET de la configuración de VS puede ayudar:

HERRAMIENTAS-> Asistente para importar y exportar configuraciones-> Restablecer todas las configuraciones-> casilla de verificación "No, solo restablecer configuraciones, sobrescribir mis configuraciones actuales" -> Siguiente> Siguiente> Siguiente

Los había molestado con RESHARPER, y esto ayudó.

d.popov
fuente
2
bueno, fue así para mí, lo siento. Los había enredado con la configuración de RESHARPER.
d.popov
2
Votado Resharper ha causado estragos en mi configuración en el pasado.
Zac
Esto es aceptable solo para alguien que no haya personalizado nada.
t3chb0t
3

Descubrí que la mejor manera de solucionar los problemas de IntelliSense es simplemente descargar el proyecto en el explorador de soluciones y volver a cargarlo. Después de eso, IntelliSense siempre funciona para mí y no pierdo marcadores, puntos de interrupción ni ninguna otra configuración.

Andreas
fuente
1
Esta es la forma más simple. TY
César
1

He descubierto que si la compilación falla, el Intellisense parece romperse. Después de corregir mis errores de compilación y reconstruir el proyecto, Intellisense funcionará después de volver a cargar el archivo Razor en particular.

Matthew Will
fuente
1

En mi caso, reiniciar no funcionó.

Entonces hice los siguientes pasos extraños:

  1. Cerró la solución.
  2. Abrí otra solución
  3. Verificó que intellisense funcionó en esta otra solución.
  4. Cerró la otra solución
  5. Finalmente, reabrió la primera solución.

Y el intellisense funcionó de nuevo.

Guilherme de Jesus Santos
fuente
Esto no funcionó, pero fue un buen paso de solución de problemas para ver si es el proyecto o el estudio visual en sí el que está causando el problema.
redwards510
1

Por lo general, esto sucede cuando los búferes tienen un error. La mayoría de las veces el error de caché local se borra cuando cierra un formulario de Windows, por ejemplo, y vuelve a abrir, por lo tanto, lo vuelve a cargar en la memoria. Muchas de las soluciones anteriores funcionan, pero a veces es tan simple como cerrar el elemento y el diseñador y volver a abrir el elemento.

Además, puede intentar forzar un reinicio

Ctrl + K, Ctrl + I muestra información rápida Ctrl + Shift + Space muestra información de parámetros

Mark Alicz
fuente
1

Intenté muchas cosas que no funcionaron. Al final, corté el código al portapapeles, recreé el controlador y pegué el código. ¡Problema resuelto!

Andy Brown
fuente
1

Yo también tengo el mismo problema con Intellisense en mi editor de texto.

Acabo de closeejecutar el archivo example.cs que no proporciona Intellisense y reabrir esa clase sin reiniciar Visual Studio, funciona para mí.

Nota: no tengo el mismo problema con todos los archivos .CS en el Explorador de soluciones

Midhun Mundayadan
fuente
1

Yo uso VS 2013 y tuve el mismo problema. Mi solución fue actualizar VS a la última versión. En mi caso, la Actualización 4. Simplemente la referencia en el proyecto debe coincidir con el ensamblaje en GAC en la computadora (SO). Intellisense proviene de VS no del proyecto.

Espero que sea útil para alguien.

Piotr Knut
fuente
1

... Otra respuesta más, pero esta fue la causa de mi dolor: había instalado Developer Assistant que había estado funcionando bien pero de repente dejó de proporcionar sugerencias. Para que funcione nuevamente:

opciones -> asistente de desarrollador -> Intellisense -> Predeterminado Visual Studio Intellisense

Me tomó 5 horas encontrar eso :(

HTH

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

marque la casilla de verificación para enable Auto List MembersyParameter Information en el panel lateral derecho.

Si no está seleccionado, selecciónelo.

thejustv
fuente
0

¡Guarde todo y reinicie Visual Studio!

Chris
fuente
0

Obtengo exactamente lo mismo cada vez que trabajo con un proyecto MVC5 en particular. Reiniciar VS2013 no funciona. Eliminar archivos suo no funciona. Restablecer la configuración de todas las herramientas no funciona. Lo único que funciona es eliminar el proyecto de la solución y agregarlo nuevamente. Ver que tengo que hacer esto todos los días es realmente bastante molesto. Especialmente cuando lo tengo configurado para volver a abrir los últimos archivos que tenía abiertos, entonces necesito rastrear los que estaba trabajando y volver a abrirlos en lugar de abrirlos automáticamente.

Pyrobri
fuente
0

Estoy usando VS 2013 con MVC 5. La solución para mí fue agregar lo siguiente 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>
Steven
fuente
0

La solución de Rushonerok funciona muy bien para mí.
Para cualquiera que no sepa: <ProjectName> .v12.suo es un archivo oculto en la carpeta raíz del proyecto. Debe configurar "Mostrar archivos ocultos" en su navegador de archivos para verlo.

Petr
fuente
0

Hasta ahora, algunas de estas soluciones no me han funcionado.

Tengo la siguiente solución

Simplemente declare el tipo que desea usar explícitamente en una nueva variable y úselo en lugar de Model.

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain
Valamas
fuente
0

Para resolver esto, cerré Visual Studio Express 2013 y volví a abrir la solución, pero hice doble clic en su .slnarchivo directamente desde el sistema de archivos. Al abrirlo desde la página de inicio, mis controladores intellisense se rompieron.

CoderRoller
fuente
0

Cerrar y abrir la solución Visual Studio funcionó para mí.

Irrompible
fuente
0

A veces lo cierras por error. Intenta ctrl+spacecon Windows o cmd+spaceMac para activarlo.

picacode
fuente
0

Sé que llego un poco tarde, ¡pero agregar esto a mi App.configarchivo funcionó!

<system.web>
    <compilation>
        <assemblies>
            <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        </assemblies>
    </compilation>
</system.web>
Humano después de todo
fuente