Ich verwende MVC 5, WCF und Unity Framework in meiner Anwendung.
Beim Ausführen des WCF-Dienstes wird eine Fehlermeldung angezeigt:
Server Error in '/' Application.
Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.IO.FileNotFoundException: Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the Origin and location of the exception can be identified using the exception stack trace below.
Assembly Load Trace: The following information can be helpful to determine why the Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' could not be loaded.
WRN: Assembly binding logging is turned OFF.
To enable Assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with Assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
Stack Trace:
[FileNotFoundException: Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.]
System.Web.Mvc.PreApplicationStartCode.Start() +0
[InvalidOperationException: The pre-application start initialization method Start on type System.Web.Mvc.PreApplicationStartCode threw an exception with the following error message: Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..]
System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection`1 methods, Func`1 setHostingEnvironmentCultures) +556
System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 methods) +132
System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +102
System.Web.Compilation.BuildManager.ExecutePreAppStart() +153
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516
[HttpException (0x80004005): The pre-application start initialization method Start on type System.Web.Mvc.PreApplicationStartCode threw an exception with the following error message: Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9882460
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.33440
Ich habe in WCF-Projekt System.Web.WebPages.Razor, Version = 3.0.0.0, hinzugefügt, der gleiche Fehler bleibt bestehen.
Kann jemand diesen Fehler beheben?
Stellen Sie sicher, dass Ihr Projekt auf .net 4.5 abzielt, dass alle Referenzen gültig sind und dass Web AspNet.WebPages. * Im Ordner bin (Release/Debug) liegt.
Sie können auch versuchen, Microsoft.AspNet.WebPages-Nuget-Pakete mithilfe dieses Befehls in der Paket-Manager-Konsole neu zu installieren
> Update-Package –reinstall Microsoft.AspNet.WebPages
Ich hatte das gleiche Problem, bei dem WCF einen Fehler der nicht verwandten MVC-Assembly aufwies (ich habe mehrere MVC-Projekte in Lösung, die System.Web.WebPages.Razor, Version = 3.0.0.0 verwenden). Ich habe das Microsoft.AspNet.WebPages-Paket im WCF-Projekt installiert, WCF proj ausgeführt und es hat funktioniert. Danach hatte ich alle mit Microsoft.AspNet.WebPages zusammenhängenden Pakete deinstalliert. Es hat gut funktioniert.
Ich habe den genauen Fehler hier (unter einigen anderen fehlenden Referenzfehlern) auf meinem Win10 x64-System festgestellt. Mein Problem war (glaube ich), wurde durch die Deinstallation von etwas von Add/Remove verursacht, das andere DLLs riss.
Nachdem ich im Internet nach einer Lösung gesucht hatte, war für mich die Antwort hier letztlich die richtige Antwort: https://stackoverflow.com/a/27785999/692124
Laden Sie herunter und installieren Sie Web Pages Version 2