Visual Studio 2015 Broken Razor Intellisense

Después de instalar y luego reparar mi instancia de VS2015 , todavía no puedo hacer que intellisense (lado del servidor) funcione en mis vistas de MVC. El mensaje me avisa tan pronto como abro por primera vez en una sesión un archivo .cshtml y me dirigen 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: la excepción ha sido lanzada por el objective de una invocación. —> System.ArgumentException: el elemento ya ha sido agregado. Clave en el diccionario: Se agregó la clave ‘RazorSupportedRuntimeVersion’ : ‘RazorSupportedRuntimeVersion’ en System.Collections.Hashtable.Insert (Clave del objeto, Object nvalue, Boolean add) en System.Collections.Hashtable.Add (Clave del objeto, Valor del objeto) en System. Collections.Specialized.HybridDictionary.Add (Object key, Object value) en Microsoft.VisualStudio.Utilities.PropertyCollection.AddProperty (clave Object, propiedad Object) en Microsoft.VisualStudio.Html.Package.Razor.RazorVersionDetector.Microsoft.Html.Editor. ContainedLanguage.Razor.Def.IRazorVersionDetector.GetVersion (ITextBuffer textBuffer) en Microsoft.Html.Editor.ContainedLanguage.Razor.RazorUtility.TryGetRazorVersion (ITextBuffer textBuffer, Version & razorVersion) en Microsoft.Html.Editor.ContainedLanguage.Razor.RazorErrorTagger..ctor ( ITextBuffer textBuffer) — Fin del registro de la stack de la excepción interna — en System.RuntimeMethodHandle.InvokeMethod (Object object, Object [] arguments, Signature sig, Boolean constructor) 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 [] activationAttributes, StackCrawlMark y stackMark) en System. Activator.CreateInstance (Tipo de tipo, BindingFlags bindingAttr, Binder Binder, Object [] args, CultureInfo culture, Object [] activationAttributes) en System.Activator.CreateInstance (Type type, 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 es de alguna ayuda, tengo algunas personalizaciones de colores de fonts, 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.

Sin inteligencia en absoluto

Como se puede ver en la imagen de arriba, no tengo ningún tipo de intellisense, ni ningún tipo de coloreado de código.

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

Resolví este problema al restablecer los datos del usuario

devenv.exe /resetuserdata 

y elimine la carpeta “.vs” en mi proyecto.


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

Esto también ha sido recurrente para mí y parece estar relacionado con actualizaciones de extensiones, 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, borrar 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 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 totalmente y reinstalar VS, y el problema desapareció por un tiempo. En ambas máquinas, el problema volvió después de que instalé una extensión (una cuando instalé Web Essentials, una cuando instalé Git Diff Margin).

Grabé 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, sin embargo …

EDITAR: Y sobre el tema de solucionar el problema, he encontrado el problema unas cuantas 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 lo intenté de nuevo (corrí devenv.exe /resetuserdata ) y, bada bing bada boom, el problema desapareció (por ahora). La moraleja parece ser algo así como “si al principio no tienes éxito …”

Podría haber pasado duo a tener Resharper .
Se solucionará en versiones futuras, pero a partir de ahora (versión 10.0.2) se rompe. 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 la potencia intellisense a VS a través del menú:
ReSharper >> Enviroment >> IntelliSense >> Complete lo siguiente:
enter image description here

Y así es como debe verse el intellisense de VS:
enter image description here

Encontré el mismo problema, pero la causa fue 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 Web Developer Tools 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 lo arregló para mí de inmediato.

En Visual Studio:

Haga clic en Herramientas-> Opciones-> Editor de texto-> Todos los idiomas-> General Deseleccione “Miembros de la lista automática” Deseleccione “Información de parámetros” Marque “Miembros de la lista automática” (sí, el que acaba de marcar) Compruebe “Información de parámetros” (nuevamente el que acaba de desmarcar) Haga clic en Aceptar

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 #

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 la macro parcial en mi solución y el resaltado de la syntax de Razor parece dejar de funcionar, así que supongo que se introducen nuevos archivos en la solución que no se crean directamente a través de VS causa este problema

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

A veces, el VS Ide no muestra Intellisense en absoluto. Acabo de cerrar la solución. Cerrar VS. A continuación, vuelva a abrirlo y el problema se resuelve.

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

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

cierre todas las instancias 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ó al preajuste de fábrica, pero la syntax de Razor funcionaría

FYI: Mi instalación de VS 2015 PRO tiene instalación completa con todas las partes de 3ª.

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

Así que primero lo hice: desmarque todas las casillas de verificación para Editor de texto-> Todos los idiomas-> Finalización de estado general: enter image description here

Después de hacer clic en Aceptar, vuelva a abrir el cuadro de diálogo Opción nuevamente: y marque todo para la misma sección: enter image description here

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

Si ninguna de las otras opciones funciona, hay una solución. Después de ingresar el ‘.’ operador presione las teclas “Ctrl + Espacio” que obligarán a que aparezca el cuadro de diálogo de Intellisense.

Estaba teniendo este problema al trabajar con los archivos de razor MVC .cshtml.

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, vaya a la primera línea y coloque el punto de ruptura allí y cuando coloque el punto de ruptura, le pedirá que establezca los puntos de ruptura. enter image description here haga clic en esa configuración y cierre esa configuración. Hecho. usted intellisense ahora está trabajando.

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

Encontré esa solución por accidente durante el trabajo. También hago eso cuando el proyecto no está en ejecución. Y también puede eliminar ese punto de interrupción.

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

He publicado esta respuesta en otra pregunta de SO, solo porque quiero evitar que la gente pierda 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:

enter image description here

luego eligió incluir carpetas:

enter image description here

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

Solo pude solucionar esto actualizando la versión de las páginas web, que mencioné en otra pregunta similar:

Razor intellisense no funciona en VS 2015

El mío fue un leve dolor en el Keester, pero parecía funcionar. En mi caso, era un archivo .aspx que no volvería a hacer intellisense (después de haber cambiado 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. Se eliminó el archivo .aspx (que a su vez borró todos los archivos secundarios).
  3. Guardado mi proyecto Creó un nuevo archivo .aspx con el mismo nombre.
  4. Copie / pegue mi código desde el bloc de notas.
  5. Lo guardé.
  6. Intenté intellisense nuevamente. ¡Funcionó!

Redondo pero no tan malo como desinstalar / vs reinstalar, que es TOTALMENTE exagerado. ¡Buena suerte a todos! ¡Espero que MS lo solucione uno de estos años!