web-dev-qa-db-fra.com

Comment résoudre? En supposant que la référence Assembly 'System.Web.Mvc

En référence à questions/26393157/windows-update-driven-mvc3-and-mvc4-stop-working . Le moyen le plus rapide de résoudre l'avertissement ci-dessous?

En supposant que la référence d'assembly 'System.Web.Mvc, Version = 4.0.0.0, Culture = neutre, PublicKeyToken = 31bf3856ad364e35 'correspond à 'System.Web.Mvc, Version = 4.0.0.1, Culture = neutre, PublicKeyToken = 31bf3856ad364e35 ', vous devrez peut-être fournir du temps d’exécution politique.

19
Simon Legg

Cela arrive de temps en temps avec mes paquets NuGet. Je n'ai pas été capable d'identifier exactement comment cela se passe. (J'assume l'erreur de l'utilisateur.) Je n'avais besoin de rien mettre à jour pour le résoudre, vider le cache NuGet

J'utilise l'outil de ligne de commande nuget trouvé ici .

Vous pouvez effacer toutes les caches avec cette commande:

nuget locals all -clear

Voir: https://docs.nuget.org/consume/command-line-reference

Vous devrez probablement redémarrer Visual Studio s'il est ouvert.

9
Brian Merrell

Selon la meilleure réponse à la question .... 

  • Mettre à jour le package MVC (Visual Studio> clic droit sur projet/solution> gérer les packages de nuget> mises à jour> Microsoft ASP.NET MVC> mise à jour)
  • Ajouter manuellement la compilation Assembly

mais alors

  • Rechercher - System.Web.Mvc, Version = 4.0.0.0
  • et remplacez par - System.Web.Mvc, Version = 4.0.0.1

Qui trouvera toutes les références cachées dans les fichiers Views/Web.config.

9
Simon Legg

Après avoir testé toutes les propositions, j'ai finalement réussi à supprimer l'avertissement en modifiant le fichier .csproj de mon application Web et en définissant la propriété MvcBuildViews sur false.

Peut-être que cela pourrait aider certains d'entre vous.

0
Eric

Je recevais cet avertissement dans RoslynPad parce que l'une des dll que je faisais référence (pour moi, c'était mscorlib.dll) utilisait une version différente de celle récupérée via NuGet. Comme l'avertissement l'indique, vous pouvez le résoudre avec une stratégie d'exécution avec un lien vers la DLL de la version que vous souhaitez utiliser. Ajoutez simplement quelque chose comme ceci en haut de votre fichier:

#r "C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorlib.dll"
0
Jurgy