Erreur Visual Studio «Référence d'objet non définie sur une instance d'un objet» après l'installation d'ASP.NET et des outils Web 2015

125

Après avoir installé ASP.NET et Web Tools 2015 (RC1 update 1), j'obtiens l'erreur suivante dans les projets ASP.NET MVC 4 lors de l'ouverture de *.cshtmlfichiers:

Référence d'objet non définie sur l'instance d'un objet

Entrez la description de l'image ici

J'obtiens le même message d'erreur même si je démarre un nouveau projet ASP.NET MVC 4 et que j'essaye d'y ouvrir un *.cshtmlfichier.

J'utilise Visual Studio 2015

Carsten Cors
la source
1
Avez-vous essayé de réparer Visual Studio?
Silvermind
pas encore, mais je lance juste la réparation. Voyons ce que cela apporte
Carsten Cors
parfois, vous devez simplement redémarrer le VS :).
Kien Chu
1
@fiorebat Lors de RC2, je n'ai pas eu le problème décrit ici.
Carsten Cors
La fermeture de VS, puis l'étape 1.1 et le redémarrage ont résolu le problème pour moi. Lorsque j'ai ouvert mon projet de test pour la première fois, j'ai eu un tas d'erreurs liées aux paramètres, mais il s'est ouvert. Merci.
NetHawk

Réponses:

196

Peut-être que cela aide:

  1. Supprimez le contenu des dossiers suivants:
    1. C: \ Users \% userprofile% \ AppData \ Local \ Microsoft \ VisualStudio
    2. C: \ Users \% userprofile% \ AppData \ Local \ Microsoft \ VSCommon
  2. Parfois, vous devez vous rendre à:
    1. [x64] C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE
    2. [x86] C: \ Program Files \ Microsoft Visual Studio 14.0 \ Common7 \ IDE

et courez devenv /resetuserdata.

Attendez-vous à ce que tous vos paramètres utilisateur tels que la disposition Visual Studio, le compte Microsoft lié ou la page de démarrage puissent disparaître.

Fka
la source
6
Travaillé!! Cependant, je viens de renommer les répertoires Visualstudio & VSCommon en VisualStudio_old & VSCommon_old. Pas besoin d'exécuter "devenv / resetuserdata"
Ray
1
@DamianKobak - oui, cela aide souvent, mais uniquement pour une solution spécifique. Lorsque les choses tournent mal à chaque étape du projet, la réponse convient mieux.
Fka
90
En fait, il suffit de supprimer le dossier ComponentModelCache sur le chemin C: \ Users \ {utilisateur} \ AppData \ Local \ Microsoft \ VisualStudio \ {version - 14 ou 12}. Vous pouvez garder le reste et aucun paramètre ne se perd ...
Tom Burger
1
Cela s'applique à tous les VS, car ils ne diffèrent que par \Microsoft Visual Studio <THIS NUMBER>\Common7\IDE.
Fka
3
Assurez-vous d' exporter vos paramètres car cela les effacera et vous devrez les importer par la suite.Cela vient de corriger une erreur similaire pour moi dans VS2017 qui s'est produite après avoir ajouté le support C ++ via le programme d'installation. Notez que la suppression de ComponentModelCache n'a pas aidé.
Rimmel
66

Supprimez %LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCacheet redémarrez Visual Studio.

Vous pouvez également utiliser l' extension Clear MEF Component Cache .

Edward Brey
la source
15

Pour moi,

  1. J'ai fini le processus dans le Gestionnaire des tâches de Windows: VsHub.exe.
  2. Redémarré Visual Studio.

Après cela, tout fonctionne à nouveau comme un charme!

Hao
la source
J'ai voté pour votre réponse parce que cela résout le problème de `` Object Null Reference '', mais après cela, j'ai eu une nouvelle exception dans Visual StudioThe operation is not completed, invalid pointer
Hakan Fıstık
7

Je l'ai résolu en faisant

run devenv /resetuserdata

dans ce chemin:

[x64] C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE

Je suppose que dans x86, cela fonctionne dans ce chemin:

[x86] C:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE
José Alfredo Guerra Gómez
la source
1
Celui-ci fonctionne pour moi, mais, malheureusement, il réinitialise beaucoup de choses, y compris Re # :(
Cătălin Rădoi
Je viens de l'essayer et cela a fonctionné pour moi. qu'en est-il de cela le fait fonctionner?
tylerlindell
5

Il est recommandé d'essayer tout ou partie des éléments suivants:

  • Redémarrez Visual Studio

  • Essayez d' exécuter en tant qu'administrateur (cliquez avec le bouton droit sur Visual Studio et choisissez «Exécuter en tant qu'administrateur»)

  • Recherchez les mises à jour de Visual Studio (téléchargez-les et installez-les si elles sont disponibles)

  • Essayez d'ouvrir une autre solution / projet

Si les problèmes persistent, vous pouvez essayer les options suivantes:

  • Redémarrez votre machine locale

  • Tentative de réinitialisation de Visual Studio aux valeurs par défaut du système (cela peut être fait à partir des options de Visual Studio)

  • Tentative de réparation de votre installation Visual Studio

coder771
la source
3

Dans l'espoir que cela pourrait restreindre les choses / aider quelqu'un, j'ai fait une approche d'enquête. Pour moi, j'ai initialement déplacé le dossier dans C: \ Users \ {utilisateur} \ AppData \ Local \ Microsoft \ VisualStudio vers Mes documents et autorisé Visual Studio à le recréer en le relançant. Cela a supprimé les erreurs. J'ai donc tout déplacé en arrière, un par un, et redémarré Visual Studio à chaque fois jusqu'à ce que je découvre les coupables. Ces dossiers étaient parfaits pour revenir:

  • 1033 (écrasé la copie générée automatiquement par l'ancienne)
  • Designer (était dans mon ancienne copie, pas initialement recréé lorsque j'ai relancé VS, je l'ai recopié)
  • Extensions (écrasé la copie générée automatiquement par l'ancienne)
  • ImageLibrary (écrasé la copie générée automatiquement par l'ancienne)
  • Notifications (écrasé la copie générée automatiquement par l'ancienne)
  • STemplate (était dans mon ancienne copie, pas initialement recréé lorsque j'ai relancé VS, je l'ai recopié)
  • VTC (était dans mon ancienne copie, pas initialement recréé lorsque j'ai relancé VS, je l'ai recopié)

Ces fichiers étaient parfaits pour replacer / écraser ceux générés automatiquement:

  • ApplicationPrivateSettings (était dans mon ancienne copie, pas initialement recréé lorsque j'ai relancé VS)
  • ApplicationPrivateSettings.lock (écrase la copie générée automatiquement par l'ancienne)
  • vspdmc.lock (écrasé la copie générée automatiquement par l'ancienne)

Ces fichiers pouvaient être réinstallés. Chacun était dans mon ancienne copie et n'avait pas été initialement recréé lorsque j'ai relancé VS:

  • .NETFramework, Version = v4.0, Set = Framework, Hash = C958D412.dat
  • .NETFramework, Version = v4.0, Set = RecentAssemblies, Hash = 0.dat
  • .NETFramework, Version = v4.5, Set = Extensions, Hash = 75EAE334.dat
  • .NETFramework, Version = v4.5, Set = Extensions, Hash = 497525A2.dat
  • .NETFramework, Version = v4.5, Set = Framework, Hash = 5AE9A175.dat
  • .NETFramework, Version = v4.5.2, Set = Extensions, Hash = 24CEEB0D.dat
  • .NETFramework, Version = v4.5.2, Set = Extensions, Hash = 72AE305.dat
  • .NETFramework, Version = v4.5.2, Set = Extensions, Hash = ADF899D7.dat
  • .NETFramework, Version = v4.5.2, Set = Framework, Hash = D8E943A2.dat

Cela a causé des problèmes - supprimez ces fichiers et relancez VS pour lui permettre de les recréer:

  • ComponentModelCache - Lorsque j'ai écrasé le contenu de ce dossier avec mes anciens (4 fichiers: MS.VS.Default.cache, .catalogs, .err, .external), cela m'a donné toutes les erreurs que j'avais eues avant de ne pas pouvoir charger des packages lors du chargement de mon projet et l'erreur "référence d'objet non définie sur une instance d'un objet" lors de la tentative de fermeture de VS.
  • devenv.exe.config - identique à ComponentModelCache
  • .NETFramework, Version = v4.0, Set = Extensions, Hash = 6D09DECC.dat - provoque une sortie d'erreur du service de langage JavaScript, se plaignant de fichiers js manquants
  • .NETFramework, Version = v4.0, Set = Extensions, Hash = 9951BC03.dat - provoque une sortie d'erreur du service de langage JavaScript, se plaignant de fichiers js manquants
  • .NETFramework, Version = v4.5.2, Set = RecentAssemblies, Hash = 0.dat - provoque une sortie d'erreur du service de langage JavaScript, se plaignant de fichiers js manquants

Voici les erreurs de ces derniers fichiers .NETFramework (que je ne reçois pas si je ne les rajoute pas):

01:10:11.7550: Referenced file 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References\libhelp.js' not found.
01:10:11.7550: Referenced file 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References\sitetypesWeb.js' not found.
01:10:11.7550: Referenced file 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References\domWeb.js' not found.
01:10:11.7550: Referenced file 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References\underscorefilter.js' not found.
01:10:11.7550: Referenced file 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References\showPlainComments.js' not found.

Il se peut que je doive simplement réinstaller / réparer le plug-in JavaScript Language Service, il se peut donc qu'il ne soit pas lié. Mais certainement devenv.exe.config et ComponentModelCache doivent aller pour corriger l'erreur «référence d'objet non définie sur une instance d'un objet».

vapcguy
la source
1
J'ai souffert d'un problème lors du copier-coller dans Visual Studio 2013, la suppression du dossier ComponentModelCache a fonctionné pour moi.
Edward Comeau
3

Pour moi, ASP.NET 5 n'est pas encore requis, j'ai supprimé la mise à jour, puis réinstallé ASP.NET 4.5. C'est un peu délicat:

  1. Retiré du panneau de configuration "Microsoft ASP.NET 5 RC1 Update1". Après cela, vous n'ouvrirez plus les projets ASP.NET MVC
  2. Ensuite, j'ai changé l'installation de "Microsoft Visual Studio Professional 2015", cliqué sur "Modifier" et sélectionné "Outils de développement Web Microsoft"

Ne suivez plus la notification de mise à jour dans Visual Studio 2015 !!!

fiorebat
la source
3

Après avoir essayé la réponse du haut, j'ai constaté que vous devez également redémarrer l'ordinateur. L'erreur peut également faire partie d'un problème git où le redémarrage de votre ordinateur sera réinitialisé.

Brett Parsons
la source
2

J'obtenais une exception à chaque fois que j'essayais de créer un «nouveau» projet.

Ma solution était:

  1. Allez dans le menu OutilsExtensions et mises à jour

  2. Vérifiez le lien «Mises à jour» ... Il y a eu une mise à jour de Microsoft ASP.NET et des outils Web. Installez-le.

Cela a réglé le problème pour moi.

moe
la source
FYI: j'avais différentes mises à jour en attente; mais de même, l'installation de ceux-ci a résolu le problème.
JohnLBevan
2

Dans mon cas (pas nécessairement la solution pour vous, mais cela peut être utile pour quelqu'un), la solution était:

  1. Allez dans le menu OutilsExtensions et mises à jour

  2. Sélectionnez l' Onlineonglet dans le panneau de droite

  3. Recherchez les mots web tools, puis sélectionnez-le Microsoft ASP.NET and Web Toolset installez-le.

Dans mon cas, cela manquait sur mon ordinateur en raison de nombreuses opérations de réparation pour Visual Studio.

Hakan Fıstık
la source
1

J'obtenais cette exception à chaque fois que je créais un «nouveau» projet.

Ma solution était:

  • Aller au menu Outils ? Extensions et mises à jour
  • Ne pas vérifier le lien "Mises à jour" ... rechercher "asp.net". Il y avait une mise à jour de Microsoft ASP.NET et des outils Web. Obtenez-le sous le nom AspNetWebFrameworksTools2015_KB3137909.exe et installez-le.

Cela a réglé le problème pour moi.


Malheureusement, j'ai rencontré une autre exception:

"Une exception a été émise par la cible d'un appel"

J'ai désactivé la FIPSvaleur du paramètre Activé DWORDà zéro.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\FipsAlgorithmPolicy]
Enabled=dword:00000000 And All fixed.
orign
la source
1

Accédez à Windows + R et tapez% temp% et appuyez sur Entrée. supprimez le dossier temporaire et les fichiers, puis essayez d'ouvrir le même

Muhammed
la source
0

Je me suis battu avec ça pendant tout le week-end. Mais c'est assez facile de le faire. Ce que j'ai fait, c'est de cliquer sur réparer plutôt que sur désinstaller. Après la réparation, j'ai cliqué sur redémarrer directement. Après cela, tout fonctionne parfaitement. Vous devriez essayer ceci, peut-être que cela peut fonctionner aussi pour vous !!!

nshuti88
la source
0

Le redémarrage de Visual Studio l'a fait pour moi. Lors de la prochaine exécution, il a affiché un "Analyse des composants MEF nouveaux et mis à jour ...", puis il s'est exécuté normalement.

Cela semble être lié à la mise à jour de Windows, bien que je n'en ai pas de preuve.

Cristian Amarie
la source
0

Supprimez les dossiers bin et obj dans tous les projets de cette solution.

On dirait que ces dossiers contenaient d'anciens fichiers générés par une ancienne version de Visual Studio, qui ne sont pas compatibles avec la nouvelle version de Visual Studio.

Jay Shah
la source
0

La solution au problème lorsque j'ai eu cela plus tôt dans la journée était qu'il y avait un ensemble supplémentaire de balises boulonnées à la fin de mon Web.config. Une fois supprimée, la fonctionnalité est revenue.

Glaces
la source
0

J'obtenais une erreur similaire dans VS2017 en essayant de publier ma solution sur Azure.

Cet algorithme m'a aidé à le résoudre:

  1. Fermer VS2017
  2. Ouvrez le dossier C: \ Users {votre nom d'utilisateur} \ AppData \ Local \ Microsoft \ VisualStudio \
  3. Renommer le dossier 15.0_08edcd83
  4. Démarrer VS
  5. Publier fonctionne bien!

Notez que cela supprimera les fichiers / projets récents de Visual Studio de son historique et les liera également au compte MS.

Cette méthode est légèrement différente de la réponse Top. Ici, vous n'avez pas à supprimer d'autres dossiers, sauf en renommant celui susmentionné.

greenwd
la source
-1

Problème: mon VS 2015 a généré une erreur après avoir installé SSDT. Chaque fois que je cliquais sur Outils >> Extensions et mise à jour, l'erreur "Référence d'objet non définie sur une instance d'objet". Lorsque j'ai essayé d'ouvrir une solution, certains fournisseurs n'étaient pas correctement définis.

Solution: après de nombreuses heures de recherche, essayer toutes les solutions précédemment mentionnées par d'autres n'ont pas résolu mon problème. Chaque fois que la fenêtre contextuelle d'erreur indiquait de vérifier ActivityLog.xml. Mais je l'ignorais. Après des heures de frustration, j'ai décidé de lire l'erreur attentivement et j'ai regardé dans ActivitLog.xml et j'ai trouvé qu'il recherchait "Impossible de charger le fichier ou l'assembly 'System.Collections.Immutable, Version = 1.1.37.0" . Je viens donc de commencer à chercher cet assemblage et je suis tombé sur ce lien https://sergeytihon.com/2015/12/01/how-to-restore-viual-studio-2015-after-update-1-dependency-dance/ et suivi les étapes là-bas, ce qui a résolu mon problème.

Entré dans% LOCALAPPDATA% / Local \ Microsoft \ VisualStudio \ 14.0 \ devenv.exe.config et recherché "System.Collections.Immutable" et changer newVersion de 1.1.36.0 à 1.1.37.0

La configuration finale devrait ressembler à ceci

<dependentAssembly>
 <assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
 <bindingRedirect oldVersion="1.0.27.0-1.1.65535.65535" newVersion="1.1.37.0"/>
</dependentAssembly>
Joseph Abraham
la source