67 votes

Impossible de charger le fichier ou l'assemblage "System.Web.WebPages.Razor, Version=2.0.0.0".

Je viens de mettre à niveau des paquets dans un projet MVC 3 (ASP.net 4), et je reçois maintenant le message d'erreur suivant lorsque j'accède à une page de ce projet :

Erreur de serveur dans l'application '/MyApplication'.

Impossible de charger le fichier ou l'assemblage 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou une de ses dépendances. La définition du manifeste de l'assemblage localisé ne correspond pas à la référence de l'assemblage. (Exception de HRESULT : 0x80131040) Description : Une exception non gérée s'est produite pendant l l'exécution de la demande Web actuelle. Veuillez consulter la trace de la pile pour obtenir plus d'informations sur l'erreur et sur son origine dans le code.

Détails de l'exception : System.IO.FileLoadException : Impossible de charger le fichier ou assemblage 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou l'une de ses dépendances. La définition du manifeste de l'assemblage situé à l'adresse l'assemblage localisé ne correspond pas à la référence de l'assemblage. référence. (Exception de HRESULT : 0x80131040)

Erreur de source :

Une exception non gérée a été générée pendant l'exécution de la demande Web actuelle. Les informations concernant l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de la pile d'exception ci-dessous.

Trace de chargement de l'assemblage : Les informations suivantes peuvent être utiles pour déterminer pourquoi l'assemblage 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutre, PublicKeyToken=31bf3856ad364e35' n'a pas pu être chargé.

\=== Informations sur l'état de préliaison === LOG : Utilisateur = IIS APPPOOL \ASP.NET v4.0 LOG : DisplayName = System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 (Entièrement spécifié) LOG : Appbase = file:///C:/.../ LOG : Initial PrivatePath = C :... \bin Assemblage appelant : Microsoft.Web.Helpers, Version=2.0.0.0, Culture=neutre, PublicKeyToken=31bf3856ad364e35. === LOG : Ce bind démarre dans le contexte de chargement par défaut. LOG : Utilisation du fichier de configuration de l'application : C :... \web.config LOG : Utilisation du fichier de configuration de l'hôte d'hôte : C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config LOG : Utilisation du fichier de configuration de la machine à partir de C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config. LOG : Référence post-politique : System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutre, PublicKeyToken=31bf3856ad364e35 LOG : Tentative de téléchargement de la nouvelle URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary Fichiers ASP.NET/.../cb62a7b2/327a0353/System.Web.WebPages.Razor.DLL. LOG : Tentative de téléchargement de la nouvelle URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/.../cb62a7b2/327a0353/System.Web.WebPages.Razor/System.Web.WebPages.Razor.DLL. LOG : Tentative de téléchargement de la nouvelle URL file:///C:/LeGroupeHtmSVN/.../UpDir.Web/bin/System.Web.WebPages.Razor.DLL. WRN : La comparaison du nom de l'assemblage a donné lieu à une discordance : Major Version ERR : Impossible de terminer la configuration de l'assemblage (hr = 0x80131040). Sondage terminé.

Stack Trace :

[FileLoadException : Impossible de charger le fichier ou l'assemblage System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou l'une de ses dépendances. La définition du manifeste de l'assemblage situé à l'adresse l'assemblage localisé ne correspond pas à la référence de l'assemblage. référence. (Exception de HRESULT : 0x80131040)]
Microsoft.Web.Helpers.PreApplicationStartCode.Start() +0

[InvalidOperationException : L'initialisation du démarrage de la préapplication Start sur le type Microsoft.Web.Helpers.PreApplicationStartCode a déclenché une exception avec le message d'erreur suivant : Could not load fichier ou l'assemblage 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou une de ses dépendances. dépendances. La définition du manifeste de l'assemblage localisé ne correspond pas à la référence de l'assemblage. (Exception de HRESULT : 0x80131040).
System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 méthodes) +11711966
System.Web.Compilation.BuildManager.CallPreStartInitMethods() +465
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +1167

[HttpException (0x80004005) : L'initialisation du démarrage de la préapplication méthode Start sur le type Microsoft.Web.Helpers.PreApplicationStartCode a généré une exception avec le message d'erreur suivant : Impossible de charger fichier ou l'assemblage 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou une de ses dépendances. dépendances. La définition du manifeste de l'assemblage localisé ne correspond pas à la référence de l'assemblage. (Exception de HRESULT : 0x80131040).
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +11700896 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +141 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +4869125

-------------------------------------------------------------------------------- Version Information: Microsoft .NET Framework Version:4.0.30319 ; Version ASP.NET : 4.0.30319.272

Dans mon fichier web.config, et dans mon application, je fais référence à System.Web.WebPages.Razor v1.0.0.0 :

  <dependentAssembly>
    <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
  </dependentAssembly>

Je ne sais même pas si je peux utiliser System.Web.WebPages.Razor v2.0.0.0 avec .Net 4.

Maintenant, comment puis-je trouver ce qui fait référence à System.Web.WebPages.Razor v2.0.0.0 ?

0 votes

Cela peut aussi causer le problème MSB3277 : Des conflits entre différentes versions d'un même assemblage dépendant ont été découverts et n'ont pas pu être résolus.

1voto

Dirk Verheijke Points 41

Après la réinstallation complète de mon PC, j'ai eu l'erreur décrite ici. VS 2017 a été réinstallé mais "ASP.NET Web Pages 2" n'a pas été réinstallé. Après avoir réinstallé "ASP.NET Web Pages 2", le problème a été résolu.

Voir aussi : Impossible de charger le fichier ou l'assemblage System.Web.WebPages.Razor, , Version=3.0.0.0 ou l'une de ses dépendances.

0voto

KhaNguyen Points 66

Dans certains cas, il suffit d'installer la page Web 2 pour résoudre ce problème (résolu dans mon cas - déploiement vers une page Web locale en utilisant l'API Web).

https://www.microsoft.com/en-us/download/details.aspx?id=34600

0voto

SOS Points 21

Si un projet en cours se bloque soudainement avec l'erreur mentionnée, vous pouvez essayer la solution suivante.

  • Supprimez le dossier bin du projet web/service correspondant.
  • Construire

Cela a marché pour moi.

0voto

imanabidi Points 3203

Pour des erreurs de liaison d'assemblage similaires, les étapes suivantes peuvent vous aider :

  1. Cliquez avec le bouton droit de la souris sur votre solution et cliquez sur Gérer les paquets Nuget pour les solutions ...
  2. allez dans l'onglet Consolidation (dernier onglet) et vérifiez s'il y a des différences entre les paquets installés dans les différents projets de votre solution. faites surtout attention aux projets référencés qui peuvent avoir des versions inférieures car ils sont généralement moins remarqués)
  3. consolider spécialement les paquets liés à votre erreur d'assemblage et notez que de nombreux paquets sont dépendants d'autres paquets comme *.code & *.api & ...
  4. après avoir résolu toutes les consolidations suspectes, reconstruisez et relancez l'application et voyez si les liaisons d'assemblage sont résolues.

0voto

OutstandingBill Points 610

J'ai d'abord essayé La réponse de Mohammed Emad - pas de joie. J'ai ensuite essayé

git clean -x -d -f

ce qui m'a amené à une nouvelle erreur "Roslyn" que j'ai pu corriger en éditer manuellement mon .csproj .

Fait intéressant, après avoir lu un peu plus loin la page sur la question de Roslyn, j'ai trouvé une autre suggestion avec encore plus de votes ( Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r ). Pensant qu'il valait mieux mettre en œuvre cette solution plutôt que de modifier manuellement le fichier .csproj, j'ai annulé les modifications apportées au fichier .csproj, pour constater que ma solution fonctionnait toujours.

Donc, après tout cela, je me demande si la réponse de Mohammed (sur cette page) aurait fait l'affaire, si j'avais simplement fait le git clean d'abord.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X