c# asp.net-mvc razor intellisense visual-studio-2015

c# - Visual Studio 2015 Broken Razor Intellisense



asp.net-mvc visual-studio-2015 (17)

A veces, el VS Ide no muestra Intellisense en absoluto. Acabo de cerrar la solución. Cerrar VS. Luego vuelva a abrirlo y el problema está resuelto.

Después de instalar y luego reparar mi instancia VS2015 , todavía no puedo hacer que intellisense (lado del servidor) funcione en mis vistas MVC. Recibo un mensaje de alerta cuando abro por primera vez en una sesión un archivo .cshtml y me dirijo al archivo Activitylog. Mensaje de error recuperado en ActivityLog.xml (versión corta):

System.ArgumentException: el elemento ya se ha agregado. Clave en el diccionario: ''RazorSupportedRuntimeVersion''

Aquí está la versión completa:

System.Reflection.TargetInvocationException: el destino de una invocación ha lanzado una excepción. ---> System.ArgumentException: el elemento ya se ha agregado. Clave en el diccionario: ''RazorSupportedRuntimeVersion'' Clave que se agrega: ''RazorSupportedRuntimeVersion'' en System.Collections.Hashtable.Insert (clave de objeto, objeto nvalue, Boolean add) en System.Collections.Hashtable.Add (clave de objeto, valor de objeto) en el sistema. Collections.Specialized.HybridDictionary.Add (clave de objeto, valor de objeto) en Microsoft.VisualStudio.Utilities.PropertyCollection.AddProperty (clave de objeto, propiedad de objeto) en Microsoft.VisualStudio.Html.Package.Razor.RazorVersionDetector.Microsoft.Html.Ecrosoft. . ITextBuffer textBuffer) --- Fin de la traza de la pila de excepción interna --- en System.RuntimeMethodHandle.InvokeMethod (Objetivo del objeto, argumentos Object [], Firma sig, Constructor booleano) en System.Reflection.RuntimeCo nstructorInfo.Invoke (BindingFlags invokeAttr, Binder binder, Object [] parámetros, CultureInfo culture) en System.RuntimeType.CreateInstanceImpl (BindingFlags bindingAttr, Binder binder, Object [] args, CultureInfo culture, Object [] activaciónAttributes, StackCrawlMark & ​​stack. Activator.CreateInstance (Tipo de tipo, BindingFlags bindingAttr, Binder binder, Object [] args, CultureInfo culture, Object [] ActivationAttributes) en System.Activator.CreateInstance (Tipo de tipo, Object [] args) en Microsoft.Html.Editor.ContainedLanguage. Common.ContainedCodeErrorTaggerProvider''1.CreateTagger [T] (ITextBuffer textBuffer) en Microsoft.VisualStudio.Text.Tagging.Implementation.TagAggregator''1.GatherTaggers (ITextBuffer textBuffer)

Si me sirve de ayuda, tengo algunas personalizaciones para colorear fuentes y tengo instaladas las extensiones Web Essentials, Bundler & Minifier y Web Compiler.

ACTUALIZACIÓN : sucede cuando abro una aplicación web existente o cuando creo una nueva desde cero. También hay una instancia de VS2013 instalada y ejecutándose en la misma máquina.

Como puede ver en la imagen de arriba, no obtengo ningún intellisense, ni ningún tipo de código para colorear.

¿Alguna pista sobre cómo solucionarlo? Gracias por adelantado.


El mío fue un ligero dolor en el Keester pero parecía funcionar. En mi caso, era un archivo .aspx que ya no haría intellisense (después de cambiar estúpidamente el nombre de archivo .aspx ... ¡lección aprendida!)

  1. Copié todo mi código de los archivos (.aspx y .cs) en el bloc de notas, por ejemplo.
  2. Eliminó el archivo .aspx (que a su vez eliminó todos los archivos secundarios).
  3. Salvé mi proyecto. Creó un nuevo archivo .aspx con el mismo nombre.
  4. Copié / pegué mi código del bloc de notas.
  5. Lo guardé
  6. Intenté intellisense de nuevo. ¡Funcionó!

Redondear pero no es tan malo como desinstalar o volver a instalar, lo cual es TOTALMENTE excesivo. ¡Buena suerte a todos! ¡Esperemos que MS lo arregle uno de estos años!


Encontré el mismo problema, pero la causa era diferente de las otras respuestas.

Una actualización de Visual Studio, sospecho que la actualización de TypeScript en septiembre de 2015, desinstaló el componente de Herramientas para desarrolladores web de Visual Studio 2015. Eso hace que Intellisense no funcione.

Instalé Web Developer Tools en las opciones del instalador nuevamente Y eliminé ComponentModelCache después de la instalación. Eso funcionó para mí.


Esto me lo arregló de inmediato.

En Visual Studio:

Haga clic en Herramientas-> Opciones-> Editor de texto-> Todos los idiomas-> General Desmarque "Miembros de la lista automática" Desmarque "Información del parámetro" Marque "Miembros de la lista automática" (sí, el que acaba de desmarcar) Marque "Información del parámetro" (nuevamente, el que acaba de desmarcar) Haga clic en Aceptar


Esto puede sonar gracioso pero solo para hacer una cosa ...

Ponga el punto de interrupción en cualquier línea y luego espere 5 segundos para que no funcione, luego vaya a la primera línea y coloque el punto de interrupción allí y cuando coloque el punto de interrupción le pedirá la configuración del punto de interrupción. haga clic en esa configuración y cierre esa configuración. Hecho. tu intellisense ahora está funcionando.

Tengo VS 2015 Community Edition. Anteriormente tenía VS 2015 Enterprise y sucedió en eso, pero después de obtener la comunidad descubrí que sucede lo mismo y la misma solución funciona para ambos.

Encontré esa solución accidentalmente durante el trabajo. También haga eso cuando el proyecto no se esté ejecutando. Y también puede eliminar ese punto de interrupción.


Esto también ha sido recurrente para mí y parece estar conectado a las actualizaciones de extensión, pero aún no he podido culpar a nada específico. Lo que he podido descubrir es una resolución menos intrusiva.

En mi caso, eliminar el contenido de este directorio permite que el IDE se recupere:

%LocalAppData%/Microsoft/VisualStudio/14.0/ComponentModelCache

Editar: acabo de encontrar este que también podría ser útil: borrar caché de componentes MEF (abrir la galería VSIX)


FWIW, tuve este problema con VS 2015 Enterprise en dos máquinas diferentes. En una máquina, restablecer los datos del usuario hizo que el problema desapareciera (por un tiempo). En la otra máquina, tuve que desinstalar y reinstalar totalmente VS, y el problema desapareció por un tiempo. En ambas máquinas, el problema volvió después de que instalé una extensión (una vez al instalar Web Essentials, una vez al instalar Git Diff Margin).

Quemé un caso de soporte técnico de MSDN, y la respuesta fue ... Sí, es un error, MS lo sabe y están trabajando en ello.

No es una respuesta particularmente accionable, pero una respuesta no obstante ...

EDITAR: Y sobre el tema de solucionar el problema, me he encontrado con el problema varias veces más desde que publiqué esta "respuesta". Más recientemente, instalé una actualización de NuGet Package Manager, y cuando VS se reinició, comenzó a tener este problema. devenv.exe /resetuserdata , pero eso no ayudó; Todavía estaba roto. Así que intenté nuevamente (ejecuté devenv.exe /resetuserdata ) y, por ahora, el problema desapareció (por ahora). La moraleja parece ser algo como "si al principio no tienes éxito ..."


FYI: Mi instalación VS 2015 PRO tiene instalación completa con todos los terceros.

Intenté todas las soluciones posibles que aquí en el artículo, no me ayudaron. Lo que Craig Goldensoph escribió me ayudó en parte a encontrar una solución para mí.

Así que primero lo hice: desmarqué todas las casillas de verificación del Editor de texto-> Todos los idiomas-> Finalización de la declaración general:

Después de hacer clic en Aceptar, vuelva a abrir el cuadro de diálogo de opción: y verifique todo para la misma sección:

y aplique la configuración nuevamente. Tienes que reiniciar tu Visual Studio. Después de reiniciar, tardará un tiempo en cargarse, pero después de eso funcionó para mí.


He publicado esta respuesta en otra pregunta SO, solo porque quiero evitar que las personas pierdan el tiempo que acabo de perder. Mi problema fue que agregué archivos a un proyecto, pero no los incluí. Así que elegí mostrar todos los archivos:

luego eligió incluir carpetas:

El problema solo aparece cuando abres un sitio web de MVC como proyecto, y no cuando lo abres como un sitio web directamente.


La solución /ResetUserData es su mejor /ResetUserData , pero también creo que he descubierto una posible causa de esto ...

Actualmente estoy usando Umbraco para crear Macro Partials en BackOffice. Cuando se crean estos archivos, hago clic en el botón Ocultar / Mostrar todos los archivos para mostrar el Macro Parcial en mi solución y el Resaltado de sintaxis de Razor parece dejar de funcionar, así que supongo que se introducen nuevos archivos en su solución que no se crean directamente a través de VS causar este problema

Incluso al agregar los archivos a la solución, el resaltado de sintaxis no funciona.


No necesita restablecer todo, simplemente elimine todos los archivos de %LocalAppData%/Microsoft/VisualStudio/14.0/ComponentModelCache y reinicie VS, estará bien.


Para agregar mis 2 centavos. Ninguna de las soluciones anteriores funcionó para mí, entonces encontré este enlace:

http://www.c-sharpcorner.com/blogs/how-to-resolve-intellisense-issue-in-visual-studio1

En particular este

Solución 4:

A continuación, restablezca la configuración desde la siguiente ubicación.

Herramientas-> Importar y exportar configuraciones-> Restablecer todas las configuraciones.

A partir de ahí, elijo Visual C #


Pudo haber pasado duo a tener Resharper .
Se solucionará en futuras versiones, pero a partir de ahora (versión 10.0.2) está roto. Resharper anula el intellisense de Visual Studio y, por lo tanto, no funcionará. Lo que también explica por qué ejecutar devenv.exe /ResetUserData corrige, ya que elimina Resharper .

Regrese manualmente el poder de inteligencia a VS a través del menú:
ReSharper >> Enviroment >> IntelliSense >> Rellene lo siguiente:

Y así es como debería verse el intellisense de VS:


Resolví este problema restableciendo los datos del usuario

devenv.exe /resetuserdata

y elimine la carpeta ".vs" en mi proyecto.

ADVERTENCIA: esto restablecerá todas las configuraciones de usuario. Esencialmente, es como restablecer los valores predeterminados de fábrica. Perderá cualquier atajo de teclado personalizado, extensiones que haya instalado, etc.


Si ninguna de las otras opciones funciona, hay una solución alternativa. Después de ingresar el ''.'' El operador presiona las teclas "Ctrl + Espacio" que deberían forzar la aparición del cuadro de diálogo Intellisense.

Estaba teniendo este problema cuando trabajaba con archivos de afeitadora MVC .cshtml.



Hay otra solución, sin restablecer todos los datos del usuario

(pero solo diseños de ventanas / barras de herramientas):

cierre todas las instancias de VS2015, [eventualmente haga una copia de seguridad y] elimine la carpeta:

"[User Directory]/AppData/Roaming/Microsoft/Visual Studio/14.0"

Ahora, vuelva a abrir VS2015: el diseño se restableció a los valores predeterminados de fábrica, pero la sintaxis de Razor funcionaría