it-swarm.com.de

Laufzeitfehler: Datei oder Assembly 'System.Web.WebPages.Razor, Version = 3.0.0.0 konnte nicht geladen werden

Ich habe mit meinen ASP.NET MVC4-Paketen über NuGet gebastelt, und jetzt wird System.Web.WebPages.Razor v3 nicht geladen. Manchmal werden auch andere Pakete nicht geladen.

Mein Kollege führt die Lösung ohne Probleme aus, daher ist das Problem definitiv eine Konfiguration auf meinem Entwicklungssystem (im Gegensatz zu allem, was eingecheckt wurde).

Ich habe die Empfehlungen bereits in verschiedenen Foren und anderen Links ausprobiert, darunter:

Sowie Vorschläge von dort verlinkt. Ich habe auch die Systemsteuerung überprüft und keine installierten Programme gefunden, die auf MVC bezogen sind. (Wenn es wichtig ist, verwende ich MS Win 7 SP 1.)

Ich bin offen für alle Vorschläge.

Hier ist meine Core-Dump-Info:

Serverfehler in '/' Anwendung.

Datei oder Assembly 'System.Web.WebPages.Razor, Version = 3.0.0.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35' oder .__ konnte nicht geladen werden. eine seiner Abhängigkeiten. Die angegebene Datei wurde vom System nicht gefunden.

Beschreibung: Während der Ausführung der aktuellen Webanforderung ist eine nicht behandelte Ausnahme aufgetreten. Bitte überprüfen Sie die Stack-Ablaufverfolgung auf weitere Informationen über den Fehler und den Ursprung des Codes. 

Ausnahmedetails: System.IO.FileNotFoundException: Datei oder Assembly 'System.Web.WebPages.Razor, Version = 3.0.0.0, .__ konnte nicht geladen werden. Kultur = neutral, PublicKeyToken = 31bf3856ad364e35 'oder eines davon Abhängigkeiten. Die angegebene Datei wurde vom System nicht gefunden.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the Origin and location of

die Ausnahme kann anhand der unten aufgeführten Ausnahme-Stack-Ablaufverfolgung identifiziert werden.

Assembly Load Trace: The following information can be helpful to determine why the Assembly 'System.Web.WebPages.Razor,

Version = 3.0.0.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35 ' konnte nicht geladen werden.

=== Statusinformationen vor dem Binden === LOG: Benutzer = CodesWithHammer LOG: DisplayName = System.Web.WebPages.Razor, Version = 3.0.0.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35 (Vollständig angegeben) LOG: Appbase = Datei: /// c:/Benutzer/CodesWithHammer/Dokumente/Visual Studio 2012/Projekte/MPP/MPP / LOG: Anfängliche PrivatePath = c:\Benutzer\CodesWithHammer\Documents\Visual Studio 2012\Projekte\MPP\MPP\bin Aufrufen von Assembly: Microsoft.Web.WebPages.OAuth, Version = 3.0.0.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35.

=== LOG: Diese Bindung beginnt im Standard-Ladekontext . LOG: Verwenden der Anwendungskonfigurationsdatei: c:\users\CodesWithHammer\documents\visual studio 2012\Projekte\MPP\MPP\web.config LOG: Verwendung der Host-Konfigurationsdatei: C:\Users\CodesWithHammer\Documents\IISExpress\config\aspnet.config LOG: Verwenden der Maschinenkonfigurationsdatei unter C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config . LOG: Referenz nach Richtlinie: System.Web.WebPages.Razor, Version = 3.0.0.0, Kultur = neutral, PublicKeyToken = 31bf3856ad364e35 LOG: Der Download der neuen URL-Datei wird versucht: /// C:/Users/CodesWithHammer/AppData/Local/Temp/Temporäres ASP.NET Dateien/root/5bf3ca07/f960d9c5/System.Web.WebPages.Razor.DLL . LOG: Der Download der neuen URL-Datei wird versucht: /// C:/Users/CodesWithHammer/AppData/Local/Temp/Temporäres ASP.NET Dateien/root/5bf3ca07/f960d9c5/System.Web.WebPages.Razor/System.Web.WebPages.Razor.DLL . LOG: Versuch des Herunterladens einer neuen URL-Datei: /// c:/users/CodesWithHammer/documents/visual studio 2012/Projekte/MPP/MPP/bin/System.Web.WebPages.Razor.DLL . LOG: Versuch des Herunterladens einer neuen URL-Datei: /// c:/users/CodesWithHammer/documents/visual studio 2012/Projekte/MPP/MPP/bin/System.Web.WebPages.Razor/System.Web.WebPages.Razor.DLL . LOG: Der Download der neuen URL-Datei wird versucht: /// C:/Users/CodesWithHammer/AppData/Local/Temp/Temporäres ASP.NET Dateien/root/5bf3ca07/f960d9c5/System.Web.WebPages.Razor.EXE . LOG: Der Download der neuen URL-Datei wird versucht: /// C:/Users/CodesWithHammer/AppData/Local/Temp/Temporäres ASP.NET Dateien/root/5bf3ca07/f960d9c5/System.Web.WebPages.Razor/System.Web.WebPages.Razor.EXE . LOG: Versuch des Herunterladens einer neuen URL-Datei: /// c:/users/CodesWithHammer/documents/visual studio 2012/Projekte/MPP/MPP/bin/System.Web.WebPages.Razor.EXE . LOG: Versuch des Herunterladens einer neuen URL-Datei: /// c:/users/CodesWithHammer/documents/visual studio 2012/Projekte/MPP/MPP/bin/System.Web.WebPages.Razor/System.Web.WebPages.Razor.EXE.Stapelverfolgung:.

[FileNotFoundException: Could not load file or Assembly 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,  

PublicKeyToken = 31bf3856ad364e35 'oder eine seiner Abhängigkeiten. Das
 System kann die angegebene Datei nicht finden.] 
 Microsoft.Web.WebPages.OAuth.PreApplicationStartCode.Start () +0

[InvalidOperationException: The pre-application start initialization method Start on type

Microsoft.Web.WebPages.OAuth.PreApplicationStartCode hat ein .__ geworfen. Ausnahme mit der folgenden Fehlermeldung: Datei oder .__ konnte nicht geladen werden. Assembly 'System.Web.WebPages.Razor, Version = 3.0.0.0, Kultur = neutral, 
 PublicKeyToken = 31bf3856ad364e35 'oder eine seiner Abhängigkeiten. Das
 System kann die angegebene Datei nicht finden ..] 
 System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore (ICollection1
  methods, Func1 setHostingEnvironmentCultures) +550 
 System.Web.Compilation.BuildManager.InvokePreStartInitMethods (ICollection`1 
 Methoden) +132 
 System.Web.Compilation.BuildManager.CallPreStartInitMethods (String 
 PreStartInitListPath) +90 
 System.Web.Compilation.BuildManager.ExecutePreAppStart () +135 
 System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager 
 AppManager, IApplicationHost appHost, IConfigMapPathFactory 
 ConfigMapPathFactory, HostingEnvironmentParameters, HostingParameters, 
 PolicyLevel policyLevel, Exception appDomainCreationException +)

[HttpException (0x80004005): The pre-application start initialization method Start on type

Microsoft.Web.WebPages.OAuth.PreApplicationStartCode hat ein .__ geworfen. Ausnahme mit der folgenden Fehlermeldung: Datei oder .__ konnte nicht geladen werden. Assembly 'System.Web.WebPages.Razor, Version = 3.0.0.0, Kultur = neutral, 
 PublicKeyToken = 31bf3856ad364e35 'oder eine seiner Abhängigkeiten. Das
 System kann die angegebene Datei nicht finden ..] 
 System.Web.HttpRuntime.FirstRequestInit (HttpContext-Kontext) +9874840 
 System.Web.HttpRuntime.EnsureFirstRequestInit (Kontext HttpContext) +101 
 System.Web.HttpRuntime.ProcessRequestNotificationPrivate (IIS7WorkerRequest 
 Wr, HttpContext-Kontext) +254

Versionsinformationen: Microsoft .NET Framework Version: 4.0.30319; ASP.NET-Version: 4.0.30319.18055

(Für diejenigen, die bis hierhin gelesen haben: Ich habe nicht genug Ansehen, um das Tag pulling-out-my-hair zu erstellen. Wenn es ein passendes vorhandenes Tag gibt, fügen Sie es bitte hinzu. KTHX.)

ETA: Wenn ich Microsoft.AspNet.Mvc manuell auf Version 3 aktualisiert habe, ist hier der Fehler, den ich in der Package Manager Console erhalten habe:

ETA2: Ich habe das Paketverzeichnis von meinem Kollegen bekommen. Sie haben MS.AspNet.Mvc v5 und sie laufen gut. Aber sie haben auch MS.AspNet.Mvc.FixedDisplayModes v5. Ich werde also beide hinzufügen. Und ja, ich habe meine gesamte Lösung gesichert. :)

ETA3: Also habe ich ein Upgrade auf AspNet MVC v5 durchgeführt und die veralteten Mvc.FixedDisplayNodes übersprungen. Dann habe ich ein Problem mit widersprüchlichen Versionen von AspNet.WebPages erhalten, daher habe ich diesen Fix verwendet: Die widersprüchlichen Versionen von ASP.NET-Webseiten wurden erkannt: Die angegebene Version ist "1.0.0.0", aber die Version in bin ist "2.0.0.0" "in ASP.MET MVC 3

Und jetzt läuft mein Projekt!

Vielen Dank für die Hilfe!

Thanks all for the help!

23

Sie finden es im Nuget-Paket Microsoft ASP.NET Web Pages Version 3.2.0

Microsoft ASP.NET Web Pages

Wenn Sie einen Verweis auf eine frühere Version als 3.0.0.0 haben, löschen Sie den Verweis, fügen Sie den Verweis auf die richtige DLL-Datei in Ihrem Paketordner hinzu, und stellen Sie sicher, dass "Copy Local" in den Eigenschaften der DLL-Datei auf "True" gesetzt ist .

Dann in Ihrer web.config (wie von @MichaelEvanchik erwähnt)

  <runtime>
<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>
</assemblyBinding>

30
Craig Howard

"Update-Package - Microsoft.AspNet.WebPages neu installieren"

Installieren Sie die Microsoft.AspNet.WebPages-Nuget-Pakete mit diesem Befehl in der Paket-Manager-Konsole neu. 100% Arbeit !!

18
user4136790

das gleiche passiert mir NUGET.

der folgende tag hat geholfen

<runtime>
<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>

Auch wenn dies auf dem Server geschieht, musste ich sicherstellen, dass der Anwendungspool auf einem "privilegierteren" Konto für das Dateisystem ausgeführt wurde, aber ich glaube nicht, dass dies hier Ihr Problem ist

3
MichaelEvanchik

im neuen actionmailer ist "razorengine" eine abhängigkeit. Die neueste Version von Razorengine installiert die Abhängigkeit von System.Web.Razor 3.0.0.

Wenn Sie in Ihrer Anwendung eine frühere Version verwenden (ich nehme an, dass Sie actionmailer in einem anderen Projekt verwenden und auf die E-Mail-Funktionalität eines anderen Projekts verweisen), erhalten Sie dieses Problem natürlich.

In einer früheren Anwendung hatte ich eine MVC für die Webapplikation, die die system.web.Razor-Version 2.0.0 verwendet. Natürlich gab ich das Problem an. Wie zu beheben? => Einfach!

  1. Deinstallieren Sie einfach den gesamten Actionmailer in Ihrem Actionmailer-Projekt.
  2. Installieren Sie eine frühere Version von RazorEngin </ p>

    Install-Package RazorEngine -Version 3.3.0 (weil Version 3.3.0 auf system.web.razor 2.0.0 verweist)</ li>

  3. Installieren Sie actionmailer erneut (die neueste Version von RazorEngin wird nicht installiert, da Sie dies bereits getan haben.)
  4. </ ol> Succes!

2
wim boone

Ich wollte Visual Studio und die Entwicklungsumgebung nicht installieren. Daher habe ich AspNetMVC4Setup.exe in Windows Server 2016 installiert und das Problem wurde behoben. Das Installationsprogramm wurde von der Microsoft-Website heruntergeladen.

 File properties of the installer

1
Shantu

Gibt es eine System.Web.WebPages.Razor.dll im bin-Ordner Ihrer Web-App? Was ist die Version? (Explorer rechter Mausklick, Eigenschaften) Ich vermute, es ist nicht 3.0.0.0. Besorgen Sie sich einfach die Nuget-Pakete für Version 3.0.0.0, indem Sie den Paketordner von Ihrem Kollegen kopieren. Oder installieren Sie es manuell: http://www.nuget.org/packages/Microsoft.AspNet.Mvc/3.0.20105.1

BEARBEITEN: Wenn Sie Sachen von Ihrem Kollegen kopieren, kopieren Sie auch die entsprechenden Versionsnummern in packages.config. Dies ist, was Nuget sagt, welche Versionen im Paketordner abgelegt werden sollen.

1
fejesjoco

Ich hatte dieses Problem, als ich ein Upgrade auf v3.0.0.preview4 durchführte, daher wurde dieses Problem durch ein Downgrade auf eine stabile Version behoben.

0
Luca Ziegler

In meinem Fall ging es nicht um das Binden von Weiterleitungen oder das Fehlen/Nicht-Übereinstimmen von Microsoft.AspNet.Razor-Paketen/DLLs, daher haben die oben genannten Lösungen nicht funktioniert.

In meinem Nicht-Web-Projekt bestand das Problem darin, dass RazorEngine + Microsoft.AspNet.Razor in einem einem anderen Projekt (Projekt A) als dem aufrufenden Assembly/Start-Projekt (Projekt B)installiert war. Da es keinen expliziten Verweis auf Razor gibt, wurde System.Web.Razor NICHT in/bin kopiert in einem Release-Build. 

Die Lösung bestand darin, Installiere RazorEngine + Microsoft.AspNet.Razor im Anwendungseinstiegspunkt (Projekt B, in meinem Fall ConsoleApplication), dann wird der System.Web.Razor nach/bin kopiert und alle sind zufrieden.

0
Null Reference

Ich habe dieses Problem erhalten, da ich VS 2012 deinstalliert habe. Ich möchte es nicht erneut installieren. Daher habe ich AspNetMVC4Setup.exe von Microsoft.com heruntergeladen und mein Problem behoben. 

https://www.Microsoft.com/de-de/download/details.aspx?id=30683

0
Guo Huang

Ich habe den gleichen Fehler, was für mich funktioniert hat:

  1. Referenzfehler beheben.
  2. Schließen Sie Visual Studio.
  3. Pakete löschen.
  4. Löschen Sie den .vs-Ordner.
  5. Führen Sie das Projekt erneut aus.
  6. Projekt neu erstellen.
0
Abhishek sharma

In meinem Fall wurde das Problem nicht behoben, indem eine der oben genannten Methoden befolgt wurde. Ich hatte alle Pfade in meinem Paket config korrekt und die DLLs waren wie angegeben, ich bekam immer noch Laufzeitfehler für System.Web.WebPages.Razor.I changed the localhost port number and this worked

Ich bin nicht sicher, warum ich das Problem hatte und warum die Änderung der Portnummer dieses Problem gelöst hat. Dies einfach zu veröffentlichen, da dies meiner Meinung nach nützlich sein könnte. 

0
Rajshekar Reddy