web-dev-qa-db-de.com

Datei oder Assembly 'WebGrease' oder eine ihrer Abhängigkeiten konnte nicht geladen werden

Wenn ich meine MVC4-Webanwendung ausführe, wird folgender Fehler angezeigt:

Could not load file or Assembly 'WebGrease' or one of its dependencies. The located Assembly's manifest definition does not match the Assembly reference. (Exception from HRESULT: 0x80131040)

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.FileLoadException: Could not load file or Assembly 'WebGrease' or one of its dependencies. The located Assembly's manifest definition does not match the Assembly reference. (Exception from HRESULT: 0x80131040)

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.

Ich hatte web.config als:

 <assemblyBinding xmlns="urn:schemas-Microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-1.3.0.0" newVersion="1.3.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>

Nachdem ich einige Antworten zu SO gelesen hatte, änderte ich sie in:

<dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
      </dependentAssembly>

Aber es funktioniert immer noch nicht.

Was kann das Problem sein?

Bearbeiten:

enter image description here

Edit 2:

Erneut folgender Fehler nach der Installation des Pakets:

Server Error in '/' Application.

Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 

Parser Error Message: Could not load file or Assembly 'MySql.Web, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The system cannot find the file specified.

Source Error: 


Line 249:      <providers>
Line 250:        <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
Line 251:        <add name="MySQLMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Clear" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
Line 252:      </providers>
Line 253:    </membership>

Bitte helfen Sie mir, ich arbeite zum ersten Mal an MVC4 Kendu Application.

35
C Sharper

Ich hatte das gleiche Problem. 

Dies wurde von gelöst

1) Ausführen der Package Manager Console

2) Geben Sie in Console Folgendes ein: 'Install-Package Microsoft.AspNet.Web.Optimization'

das löste alle falschen Abhängigkeiten.

54
Mark H

Ich musste laufen Update-Package -Reinstall Microsoft.AspNet.Web.Optimization 

Das hat meine web.config und alle Referenzen aktualisiert

4
Eric Herlitz

Ersetzen:

<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />

Zum:

 <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-1.3.0.0" newVersion="1.3.0.0" />
3
Alex Escobar

Überprüfen Sie den Inhalt des Abschnitts Runtime/AssemblyBinding in web.config. Ich habe nach der Installation des Kendo UI-Pakets falsch registrierte abhängigeAssembly-Elemente gefunden. Ich habe Duplikate manuell entfernt und das Problem ist verschwunden. 

3

Dieses Problem tritt auf, wenn sich Ihre referenzierte DLL von Ihrer web.config-Dateikonfiguration unterscheidet. Sie müssen die DLL erneut installieren.

3
Salman Saiyad

Aktualisieren Sie einfach WebGrease auf 1.6 

PM> Update-Package WebGrease -Version 1.6
1
Ali Umair

Meine Situation war folgende: funktionierte gut auf meinem Entwicklungscomputer, aber auf der Host-Plattform wurde der Fehler "Webgrease missing" angezeigt. Meine Lösung:
1. Alle DLL-Dateien wurden aus dem Verzeichnis\bin entfernt
2. Alle Verweise aus web.config entfernt.
3. Als ich die Homepage aktualisiert habe und einen Fehler "some-next.dll fehlte" erhielt, kopierte ich some-next.dll in das bin-Verzeichnis und fügte den Verweis auf web.config für jede "frische" DLL hinzu

Hinweis: Schauen Sie sich die Eigenschaften von WebGrease.dll an Registerkarte "Details" - Stellen Sie sicher, dass die Produktversion mit dem <dependentAssembly> übereinstimmt. In meinem Fall war es so:

<dependentAssembly>
  <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
  <bindingRedirect oldVersion="0.0.0.0-1.5.1.25624" newVersion="1.6.5135.21930" />
</dependentAssembly>
0
Gary Huckabone