私はMVC 4ソリューションに取り組んでおり、それをMVC 5にアップグレードしようと試みました。 here の手順に従っています。
私はそれに従いましたが、今ではMVCアプリケーションを実行するたびに、このエラーメッセージが表示されます:
[A]System.Web.WebPages.Razor.Configuration.HostSection cannot be cast to
[B]System.Web.WebPages.Razor.Configuration.HostSection.
Type A originates from
'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35' in the context 'Default' at location
'C:\WINDOWS\Microsoft.Net\Assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll'.
Type B originates from 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35' in the context 'Default' at location
'C:\Users\User\AppData\Local\Temp\Temporary ASP.NET
Files\root\665ac028\de53a189\Assembly\dl3\c2c0a4b5\56e8099e_40e0ce01\System.Web.WebPages.Razor.dll'.
誰がこれがどのように始まったのか知っていますか?またはそれをどのように解決できますか?私はこれまで見回しましたか?私はweb.configファイルを変更しようとしましたが、利用できません...
あなたのWeb.config
(-s)assemblyBinding
にアセンブリの適切なバージョンが含まれていることを確認してくださいSystem.Web.WebPages.Razor
およびSystem.Web.Mvc
。
<assemblyBinding xmlns="urn:schemas-Microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
</assemblyBinding>
そして、sectionGroup
のかみそりConfigSections
が最新バージョンも参照していることを確認してください:
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="Host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
</sectionGroup>
Web.configでバージョンを確認します。再度エラーが発生する場合は、ソリューションをクリーンアップして再構築してください。また、プロジェクトのBinフォルダーを確認し、binフォルダーから古い参照を削除して、プロジェクトソリューションを再構築します。
Razor 2.0 dllへの参照がまだあるようです。
プロジェクト参照のプロパティ、特に「特定のバージョンを使用」プロパティを確認してください。