Maison > développement back-end > C++ > Comment résoudre l'erreur « System.Web.WebPages.Razor.Configuration.HostSection ne peut pas être diffusée » lors de la mise à niveau d'ASP.NET MVC 4 vers 5 ?

Comment résoudre l'erreur « System.Web.WebPages.Razor.Configuration.HostSection ne peut pas être diffusée » lors de la mise à niveau d'ASP.NET MVC 4 vers 5 ?

Linda Hamilton
Libérer: 2025-01-04 02:10:38
original
372 Les gens l'ont consulté

How to Resolve the

Erreur rencontrée lors de la mise à niveau d'ASP.NET MVC de 4 à 5

Lors de la mise à niveau de projets ASP.NET MVC de la version 4 à 5, un une erreur déroutante peut faire surface. Cette erreur se produit lorsque le projet mis à jour fait référence à une version incompatible de l'assembly System.Web.WebPages.Razor.dll.

Description de l'erreur

Le message d'erreur inclut généralement le informations suivantes :

System.Web.WebPages.Razor.Configuration.HostSection cannot be cast to System.Web.WebPages.Razor.Configuration.HostSection
Copier après la connexion

L'erreur provient d'une incompatibilité de type entre deux versions du assembly :

  • Version 1.0.0.0 située dans le GAC
  • Version 3.0.0.0, qui est la version attendue pour MVC 5

Étapes de dépannage

Pour résoudre cette erreur, il est Il est essentiel de vérifier manuellement les fichiers du projet (.csproj) et de mettre à jour les références d'assembly en conséquence.

  1. Décharger et modifier le fichier de projet : Déchargez le projet dans l'Explorateur de solutions et modifiez manuellement son fichier . csproj.
  2. Rechercher des références d'assemblage : Rechercher dans le fichier des références à "System.Web.WebPages.Razor" et vérifiez que le numéro de version et HintPath sont corrects.
  3. Mettre à jour les références : Mettez à jour le numéro de version vers 3.0.0.0 et assurez-vous que HintPath pointe vers un fichier existant.
  4. Répétez pour les projets dépendants : Répétez ces étapes pour tous les projets dépendants. projets dans la solution et tous ceux qui font référence à des DLL externes.

Exemple :

Ancienne référence :

<Reference Include="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
    <Private>True</Private>        
    <HintPath>..\packages\Microsoft.AspNet.WebPages.1.0.20105.408\lib\net40\System.Web.WebPages.Razor.dll</HintPath>
</Reference>
Copier après la connexion

Mise à jour Référence :

<Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <Private>True</Private>
  <HintPath>..\packages\Microsoft.AspNet.WebPages.3.0.0\lib\net45\System.Web.WebPages.Razor.dll</HintPath>
</Reference>
Copier après la connexion

Considérations supplémentaires :

  • Examinez les fichiers web.config et web.config pour vous assurer qu'ils ne font pas référence à d'anciennes versions de l'assembly.
  • Exclure les bibliothèques tierces susceptibles de faire référence à l'ancienne version de DLL.
  • Référez-vous à la [question] fournie (https://stackoverflow.com/questions/18976083/system-web-webpages-razor-configuration-hostsection-cannot-be-cast-to-system- web-) pour plus d’informations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal