Visual Studio 2015 ne met pas en évidence la syntaxe Razor ni Intellisense


121

Mes vues Razor dans VS2015 RC n'affichent pas la couleur appropriée pour le code C #. Mon projet fonctionnait bien dans VS2013, mais ce n'est pas en 2015, et il ne me donne aucun Intellisense sur le code C #. La solution se construit et le site fonctionne correctement.

J'ai essayé ce qui suit en vain

  • désactivation de toutes les extensions Visual Studio
  • suppression de mon .suofichier
  • supprimer le projet et l'ajouter à nouveau à la solution

Comment puis-je réparer cela?

Exemple:


3
Avez-vous envisagé d'attendre une sortie complète? L'actuel est encore assez bogué et se veut juste un aperçu pour les impatients.
walther

Avez-vous installé les outils de productivité? Dans mon cas, ils se sont beaucoup écrasés en vs ... Curretnly a maintenant été mis en évidence dans vNext PROjects
Boas Enkler

Cela se produit toujours dans VS2015 Professional. Aucune des réponses de ce fil de discussion ne résout le problème de manière permanente. La mise en évidence de la syntaxe reste interrompue.
Justin Skiles

Si aucune des réponses ci-dessous ne résout le problème, vous pouvez jeter un œil ici: stackoverflow.com/questions/33245041/… L' installation de .NET Core 1.0.0 a résolu le problème pour moi. J'ai commencé avec le même problème, mais j'ai également eu un problème avec les modèles Web (non disponibles pour les nouveaux projets). La coche sur «Outils de développement Web Microsoft» (comme décrit dans l'une des réponses ci-dessous) était toujours cochée.
Ruard van Elburg le

Vérifiez votre version de MVC. Si c'est 3 ou moins, VS 2015 ne le prend pas en charge.
RMuesi

Réponses:


215

J'ai trouvé dans cette réponse un autre moyen de résoudre ce problème sans ledevenv.exe /ResetUserData

Supprimez simplement le contenu de ce répertoire avec Visual Studio fermé: %LocalAppData%\Microsoft\VisualStudio\<visual_studio_version_number>\ComponentModelCache

Pour trouver le numéro de version de l'édition de Visual Studio que vous exécutez, reportez-vous à cette liste. Notez que seul le nombre majeur est important, la version mineure peut et sera probablement différente. Dans mon cas, Visual Studio 2017 Enterprise était installé, j'ai donc cherché 15.xxet trouvé 15.0_9a1c4a06dans le dossier AppData.


7
Cela a fonctionné pour moi. VS 2015 Enterprise Version 14.0.23107.0 D14REL
Toft

3
Merci. C'est le meilleur moyen au lieu de réinitialiser toutes les données utilisateur dans VS2015 Enterprise
kapsiR

1
A travaillé pour VS 2015 Enterprise
Law

4
Cela devrait être la solution principale, a fonctionné pour moi aussi sur VS 2015 entreprise
cdie

1
Cela a fonctionné pour moi, et je conviens que ce devrait être la solution principale. J'utilise la version professionnelle. Merci beaucoup.
Jón Viðar Þorsteinsson

52

J'ai eu le même problème, le seul correctif jusqu'à présent est de réinitialiser toutes les données utilisateur ( C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /ResetUserData).

REMARQUE: vous perdrez toutes les personnalisations, par exemple les raccourcis clavier et les dispositions de fenêtre si vous faites cela!

EDIT: Les gens disent que cela ne fonctionne que pour RC, pas pour RTM, vous voudrez peut-être essayer les autres correctifs en premier.


Bien que ce ne soit probablement pas la meilleure solution, cela a fonctionné pour moi! Merci! Je me demande si cela a quelque chose à voir avec l'installation des versions précédentes de CTP.
DLeh

2
vous pouvez exporter les raccourcis clavier avant, et les restaurer par la suite
Console

Le curseur ">" est-il juste dans cette ligne de commande? Cela a fonctionné pour moi en remplaçant cela par une barre oblique inverse. Mais cette solution a également fonctionné pour moi!
Nicholas Petersen

1
Et vous perdez tous les Addons.
Knerd du

1
J'ai la version Entreprise (VS 2015) . y a-t-il une solution possible pour cette version? la solution ci-dessus n'a pas fonctionné pour moi.
Zeeshan

26

J'ai eu le même problème dans VS 2015 RTM et j'ai pu le résoudre en chargeant simplement Visual Studio en mode sans échec en:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /SafeMode

puis le fermer et le rouvrir normalement.


1
Cela a fonctionné pour moi, cela vaut la peine d'essayer. Vous ne perdrez pas vos paramètres actuels.
Nick

Cela n'a pas fonctionné pour moi, cette erreur apparaît également dans SafeMode (et évidemment après la réouverture de manière "standard").
T-moty

Merci de m'avoir évité de perdre mes paramètres!
grmbl

A travaillé sur mon entreprise VS 2015
Tamim Al Manaseer

Impressionnant! travaillé pour moi aussi. Ça vaut le coup d'essayer, j'avais l'habitude de souffler mes réglages lors des dernières occasions.
Diego

10

Après la mise à jour de Visual Studio 2015 Update 1, j'ai eu le même problème. J'ai essayé toutes les réponses mais je n'ai pas fonctionné pour moi.

Le correctif pour moi allait aux programmes et propriétés> Édition de la communauté Visual Studio> Modifier. J'ai cliqué sur modifier.

Dans la liste, assurez-vous de cocher "Outils de développement Web Microsoft" sous "Développement Windows et Web".

Il n'a pas été vérifié dans ma liste cependant: /

entrez la description de l'image ici


Malheureusement, lorsque j'ai essayé cela, la coche est revenue. : <Il a refusé de partir. : <Toujours coincé avec ce problème. : <Très coché à VS en ce moment. : <énorme perte de temps.
PHenry

Jetez un oeil ici: stackoverflow.com/questions/33245041/… Les symptômes sont les mêmes. J'ai résolu ce problème en installant .NET Core 1.0.0
Ruard van Elburg

7

Outils> Options> Editeur de texte> Toutes les langues> Général. Décochez l'option Masquer les membres avancés. Cliquez sur OK.

Une fois que j'ai fait cela, Intellisense a semblé fonctionner pour moi. Je l'ai ensuite réinitialisé et conservé la fonctionnalité. J'utilise l'édition entreprise de Visual Studio 2015.

J'avais essayé ResetUserData et cela ne fonctionnait pas pour moi.


1
Eh bien, cela a fonctionné, puis il est revenu à ne pas fonctionner
Shawn

1
Cela n'a pas fonctionné pour moi avec c #. Cependant, je n'ai pas été dans l'éditeur de texte> C # et j'ai coché / décoché "Masquer les membres avancés", puis j'ai appuyé sur ok et intellisense a recommencé à fonctionner.
Todilo

cela a fonctionné pour moi aussi et était de loin préférable à la réinitialisation de mon environnement!
Paul Carroll

Il continue d'être vérifié après que je l'ai
décoché

J'ai eu un problème où le menu intellisense apparaissait pendant une fraction de seconde puis disparaissait - cela a résolu ce problème, et maintenant le menu reste visible comme prévu.
X3074861X

6

J'ai installé Visual Studio Community Edition 2015 (après avoir utilisé Visual Studio Community Edition 2013 pendant une longue période) et j'ai rencontré le même problème. J'ai essayé toutes les solutions ci-dessus mais rien n'a aidé.

Enfin, fermez Visual studio et supprimez les dossiers suivants -

C:\Users\Allwyn\AppData\Roaming\Microsoft\VisualStudio\14.0
C:\Users\Allwyn\AppData\Roaming\Microsoft\VisualStudio\14.0

... et ça marche maintenant !!!


cela a fonctionné pour moi (version complète) VS édition Entreprise 2015
hal9000

Parfois cela fonctionne et parfois non. Il l'a corrigé pour moi pendant environ 5 minutes, puis cela a recommencé.
Justin Skiles

Cela a résolu mon problème au moins pour le moment. Cela pourrait ne pas continuer à fonctionner, mais nous verrons. Cela semble être une erreur étrange et quelque chose que Microsoft devrait corriger. Ce problème était à la fois en 2015 et 2017
Deathstalker

5

Exécution de VS 2015 RTM. Ni / ResetUserData ni / SafeMode n'ont fonctionné pour moi. Il y avait également des plaintes liées à Productivity Power Tools 2015 avec une fenêtre contextuelle "errors-in-ActivityLog.xml" lors du démarrage de VS.

Donc, si vous avez des symptômes similaires, voici comment je l'ai corrigé sur ma machine:

  1. Lancez "Démarrer une instance expérimentale de Visual Studio 2015" et ouvrez votre projet. Si l'intellisense fonctionne et que la syntaxe du rasoir est en surbrillance, vous avez de grandes chances que ce qui suit fonctionne.
  2. Désinstallez «Productivity Power Tools 2015» et fermez Visual Studio.
  3. Accédez au dossier %LOCALAPPDATA%\Microsoft\VisualStudio\et effacez- 14.0le.
  4. Lancez VS - il devrait démarrer comme il vient d'être installé.

PS En fait, il m'a fallu plusieurs fois pour que mon intellisense fonctionne parce que j'ai d'abord désactivé les PowerTools et qu'il a cassé VS à nouveau une fois réactivé. Donc, cela nécessite une réinstallation complète. Cela peut être causé par une autre extension dans votre cas.


Travaille pour moi! Visual Studio 2015 Entreprise.
Timber

Fonctionne pour moi sans désinstaller "Productivity Power Tools 2015". Visual Studio 2015 Entreprise.
ShurikEv

4

Ce sera l'effet si votre projet est MVC4. Voir plus de détails ici . Notez également que cela sera corrigé dans une prochaine version.
Comment savoir si votre projet est MVC4? Ouvrez packages.config et faites défiler jusqu'à l'entrée de Microsoft.AspNet.Mvc. Si la version répertoriée commence par «4», cela signifie que vous utilisez MVC 4.


C'est en effet le problème pour moi et / resetuserdata n'aide pas :(
chrilith


Cela n'a rien à voir avec MVC4. Les projets avec MVC5 et 6 souffrent toujours de ces problèmes.
Justin Skiles

c'est ce que j'ai finalement découvert être la cause. Mon projet était MVC 3. VS 2015 ne prend pas en charge MVC 3. Rien d'autre que j'ai essayé n'a fonctionné.
RMuesi

4

J'ai eu un problème similaire, où aucun script de rasoir ne serait mis en évidence, intellisense ne fonctionnerait pas et le compilateur ne reconnaîtrait aucune erreur (même lorsque j'ai intentionnellement mis des erreurs de syntaxe!)

En fait, j'ai résolu le problème en accédant à C: / Users / YourUserName / AppData / Local / Temp et en supprimant tout de ce fichier, dès que j'ai fait cela et redémarré VS mes vues Razor ont commencé à fonctionner!

J'espère que cela pourra aider!


Cela a fonctionné pour moi. J'ai également dû supprimer manuellement certains éléments du dossier Razor-Server qui étaient verrouillés dans le processus de compilation.
Rudy Scoggins

3

Certaines vues fonctionnaient bien pour moi, d'autres pas du tout ... La seule chose qui m'a aidé:

  • Clôture VS
  • Suppression de C: \ Users \% username% \ AppData \ Local \ Temp
  • Redémarrer VS
  • Problème résolu

J'ai également essayé la plupart des autres solutions, mais elles n'ont pas fonctionné pour moi.


2

Rappel amical pour vous assurer que vous avez correctement utilisé la minuscule @modelen haut de votre vue, et non @Model(comme j'ai fait l'erreur de le faire).

Les minuscules @modelsont une directive qui tape fortement la vue sur une instance de la classe qui la suit. Alors que la majuscule Modelest une propriété de la vue qui obtient l'instance de modèle.


1

J'ai résolu le problème en incluant le fichier dans le projet / solution. J'avais oublié le fait qu'il n'y a pas de surlignage / intellisense s'il n'est pas inclus.


0

J'ai eu le même problème et j'ai dû télécharger et installer "Microsoft ASP.NET et Web Tools" et "Web Essentials". Après avoir fait cette coloration syntaxique et Razor intellisense a recommencé à fonctionner.


N'a eu aucun effet pour moi. VS2015 Professional.
Justin Skiles

J'utilise la communauté VS2015. Avez-vous essayé la solution Geir Sagbergs? Dans CMD exécutez: "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ devenv.exe" / ResetUserData
Ogglas

2
Oui. J'ai essayé toutes les solutions de chaque thread sur StackOverflow. Rien n'a fonctionné. J'ai même réinstallé VS et mon système d'exploitation.
Justin Skiles

Si vous créez un nouveau projet de console après la réinstallation, cela ne fonctionnera-t-il pas là-bas?
Ogglas

0

Désinstallé et réinstallé des éléments suivants a fonctionné pour moi:

Microsoft.AspNet.Mvc

Microsoft.AspNet.WebPages

Microsfot.AspNet.Razor

J'ai essayé la réinitialisation des données utilisateur, la suppression de temp et 14, ainsi que la modification des paramètres d'options et aucun de ceux-ci n'a fonctionné. J'ai même essayé réparé et réinstallé. J'utilise VS 2015 version 14.0.24720.00 mise à jour 1


Cela a fonctionné pour moi aussi, j'avais un site MVC4 que j'avais travaillé dans VS2013 en raison du manque de support jusqu'à la mise à jour 1. Une fois la mise à jour 1 installée, elle ne fonctionnait toujours pas en 2015, mais désinstallez et réinstallez les packages de Nuget a résolu le problème.
lostatredrock

0

Vous ne devez supprimer que le dossier «.vs» de votre projet (le dossier .vs est masqué)

Veillez à ResetUserDatasupprimer toute personnalisation sur Visual Studio.


0

La seule chose qui a fonctionné pour moi a été de changer le "Chemin de sortie" du projet en bin\(Il l'était auparavant bin\Debug):

  1. Faites un clic droit sur le projet,
  2. Cliquez sur Propertieset accédez à Build,
  3. Faites défiler jusqu'à la dernière section intitulée "Sortie",
  4. Modifiez la valeur dans la zone de texte étiqueté Output path:àbin\

0

Ci-dessus ne fonctionne pas mais j'ai réussi avec:

  • Désinstallation (à partir du programme et des fonctionnalités Windows) Web Developer Toolspour VS 2015, RC, mise à jour 1
  • Installation (à partir de VS Installer -> Modifier) Web Developer Tools(c'est une autre version de ci-dessus)

Le problème était donc que le programme d'installation de VS n'installait pas les outils de développement Web en reconnaissant la version déjà installée et incompatible comme la bonne.


0

J'ai résolu ce problème en mettant à jour mon projet vers ASP .NET MVC version 5. Mais cela nécessitait des manipulations supplémentaires avec les fichiers de configuration. Ici, j'ai trouvé le guide étape par étape:

  • dans global.asax, modifiez: WebApiConfig.Register (GlobalConfiguration.Configuration); à GlobalConfiguration.Configure (WebApiConfig.Register);
  • Assurez-vous que tous les packages que vos projets utilisent sont compatibles avec MVC 5 et Web API 2
  • Supprimez l'un des packages NuGet ASP.NET suivants qui sont installés:
    1. Microsoft.AspNet.WebPages.Administration
    2. Microsoft-Web-Helpers ( ne pas confondre avec Microsoft.AspNet.WebHelpers! )
    3. Microsoft.AspNet.Mvc.FixedDisplayMode
  • Mettez à niveau tous les packages NuGet ASP.NET. Dans la console du gestionnaire de packages, vous pouvez exécuter la commande suivante: Update-Package . Sans aucun paramètre, il mettra à jour chaque paquet.
  • Mettez à jour les fichiers de configuration de l'application et des vues:
    1. Pour tous les éléments avec l'attribut de nom «System.Web.Mvc» , remplacez le numéro de version par un nouveau (vérifiez la version de l'assembly dans l'explorateur de solutions, il doit être égal ou supérieur à «5.0.0.0»)
    2. Faites de même pour tous les éléments avec l'attribut de nom "System.Web.Helpers" et "System.Web.WebPages" .
    3. Vérifiez les redirections de liaison pour les assemblys «System.Web.Helpers» , «System.Web.Mvc» et «System.Web.WebPages» dans les fichiers de configuration, «oldVersion» et «newVersion» doivent respecter les modifications apportées ci-dessus.
    4. Localisez la section appSettings et mettez à jour les pages Web: version de "2.0.0.0.0" à "3.0.0.0"
    5. Mettez à jour tous les éléments contenant «System.Web.WebPages.Razor» de la version «2.0.0.0» à la version «3.0.0.0». Si cette section contient «System.Web.WebPages» , mettez à jour ces éléments de la version «2.0.0.0» à la version «3.0.0.0»
    6. Si vous avez supprimé le package NuGet Microsoft-Web-Helpers lors d'une étape précédente, installez Microsoft.AspNet.WebHelpers avec la commande suivante dans la console du gestionnaire de package: Install-Package -Id Microsoft.AspNet.WebHelpers

J'espère que cela aidera.


0

Une approche non invasive consiste à vérifier vos fichiers Views web.config pour les versions correctes. Ces fichiers Web.config se trouvent sous app / Area / AreaName / Views ou dans les dossiers généraux app / Views. Ils sont différents du fichier Web.config du projet.

  • Assurez-vous que chaque version dans les chaînes d'assembly de type correspond à votre version installée de NuGet
  • Assurez-vous que la version dans la chaîne d'assembly factoryType correspond à votre version installée de NuGet

Voici un exemple pour la dernière à la rédaction de ce commentaire:

<configSections>
 <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
 <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
 <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
 </sectionGroup>
 </configSections>
<system.web.webPages.razor>
 <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

0

Ce qui a fonctionné pour moi (VS 2015 Community) était l'option suggérée dans cette réponse. En exécutant cmd.exe en tant qu'administrateur, j'ai exécuté ce qui suit:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /setup

0

J'ai téléchargé et installé "Microsoft ASP.NET et Web Tools" et "Web Essentials" et cela a fonctionné pour moi.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.