43 votes

La mise à jour de WebGrease vers la version 1.3.0 me donne l'erreur suivante

Lors de la mise à niveau WebGrease à la version 1.3.0 m'envoie une erreur :

Impossible de charger le fichier ou l'assemblage 'WebGrease, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou l'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)

Erreur à la source :

Line 6:      <title>@ViewBag.Title</title>
Line 7:      @Styles.Render("~/Content/bundles/bootstrap")

Comment résoudre cette erreur.

65voto

sec_goat Points 982

Voici la réponse qui a fonctionné pour moi, et qui est une combinaison de certaines des réponses ci-dessus. Installez / désinstallez / réinstallez d'abord les paquets suivants :

Install-Package Microsoft.AspNet.Web.Optimization 
Update-Package WebGrease
Uninstall-Package Microsoft.AspNet.Web.Optimization
Uninstall-Package WebGrease
Install-Package Microsoft.AspNet.Web.Optimization 
Update-Package WebGrease

Faites ensuite une copie du contenu de ~/Views/Shared/_Layout.cshtml supprimez le fichier _Layout.cshtml, recréez-le et recollez le contenu.

c'est la dernière solution qui a fonctionné pour moi.

17voto

Hriju Points 322
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0" /> </dependentAssembly>

Modifier le code supérieur dans Web.config à la suivante

<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.0.0"/> </dependentAssembly>

4voto

Alexei Levenkov Points 49945

Il semble que vous fassiez référence à une version plus ancienne (1.0.0.0 ?) de l'assemblage (en supposant que la version actuelle soit 1.3.0.0). Dans ce cas, vous avez besoin de réorientation de l'assemblage dans web.config ou, mieux encore, recompilez vos binaires pour utiliser la dernière version.

Une autre possibilité est que la dernière version partage la même version d'assemblage que l'ancienne (1.0.0.0). Vous devez recompiler votre code pour utiliser le bon assemblage et vous assurer que la bonne copie est utilisée (vérifiez le GAC pour le mauvais, utilisez fuslogv pour déterminer le fichier exact à l'origine de l'erreur).

3voto

roadsunknown Points 1175

J'ai eu le même problème. Un autre développeur a mis à jour le paquet WebGrease (ainsi que d'autres), mais quelque chose ne s'est pas synchronisé ou n'a pas été enregistré. J'ai édité le fichier du paquet pour supprimer les références au paquet existant. J'ai ensuite réinstallé le paquet via le Gestionnaire de paquets. Enfin, j'ai mis à jour les paquets.

Il semble que les paquets ne s'installent pas ou ne se mettent pas à jour si le fichier packages.config ne correspond pas aux fichiers (y compris les bonnes versions) de votre projet. Aucune erreur n'est donnée dans le Gestionnaire de paquets, mais il ne parvient pas à mettre à jour ou à installer les paquets.

3voto

nathan Points 53

J'ai résolu le problème en combinant les éléments suivants. Tout d'abord, j'ai exécuté les commandes suivantes sur la ligne de commande du Gestionnaire de paquets (similaire à la réponse fournie par sec_goat, mais pas exactement la même) :

Uninstall-Package Microsoft.AspNet.Web.Optimization
Uninstall-Package WebGrease
Install-Package Microsoft.AspNet.Web.Optimization
Update-Package WebGrease

Ensuite, comme Hriju, j'ai dû modifier cette ligne dans mon web.config :

<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0" />

dans ce domaine :

<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.0.0" />

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