Otrzymuję następujący błąd:
[A] System.Web.WebPages.Razor.Configuration.HostSection nie może zostać przesłany do [B] System.Web.WebPages.Razor.Configuration.HostSection. Typ A pochodzi z „System.Web.WebPages.Razor, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35” w kontekście „Default” w lokalizacji „C: \ WINDOWS \ Microsoft.Net \ assembly \ GAC_MSIL \ System .Web.WebPages.Razor \ v4.0_2.0.0.0__31bf3856ad364e35 \ System.Web.WebPages.Razor.dll '. Typ B pochodzi z „System.Web.WebPages.Razor, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35” w kontekście „Default” w lokalizacji „C: \ Users \ MyName \ AppData \ Local \ Temp \ Temporary Pliki ASP.NET \ root \ 63e7ff36 \ a1cb775d \ assembly \ dl3 \ 8f568c18 \ 9b7ddacf_d04dcf01 \ System.Web.WebPages.Razor.dll '.
Przeszukałem stosy w celu znalezienia podobnych problemów i zastosowałem ich rozwiązania, ale wydaje się, że nie rozwiązuje to problemu, którego doświadczam.
Nagle się wydarzyło, właśnie nacisnąłem czysty roztwór i wyskoczył ten błąd. Zacząłem również korzystać z przywracania pakietu NuGet w rozwiązaniu. Zaktualizowałem również moje pakiety (używając Update-package), więc jeden z nich może mieć coś wspólnego z tym problemem.
źródło
Update-Package
również edytujeweb.config
Dodam tylko moje dwa centy do tego numeru.
Zauważyłem, że przyczyną tego błędu było dla mnie to, że foldery widoków web.config odwoływały się,
System.Web.WebPages.Razor, Version=2.0.0.0
gdy wszystko inne było używane3.0.0.0
Wydaje się, że uaktualnienie pakietu nuget nie uwzględniło w jakiś sposób tego folderu.
źródło
Przyczyną tego błędu jest plik web.config w folderze Views odwołujący się do System.Web.WebPages.Razor, Version = 2.0.0.0 zamiast 3.0.0.0.
Zwykle może się to zdarzyć po uaktualnieniu pakietu nuget, które nie uwzględnia tego folderu.
Zaktualizuj
Views\Web.config
plik:aby uzyskać więcej informacji na temat aktualizacji do MVC 5 http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to- aspnet-mvc-5-and-web-api-2
źródło
Wypróbowałem wszystkie powyższe metody i problem nadal nie został rozwiązany, dopóki nie wstawiłem następujących wierszy w web.config bezpośrednio w folderze projektu.
źródło
Jeśli uzyskasz to za pomocą Route Debugger, musisz zaktualizować web.config w folderze Views w obszarze dla Route Debugger.
źródło
W moim przypadku rozwiązałem to, aktualizując również plik Web.config na serwerze rzeczywistym, który VS zaktualizował po uaktualnieniu do MVC 5
źródło