2014-01-17 5 views
33

Когда я запускаю мой MVC4 веб-приложение, это дает мне следующую ошибку:Не удалось загрузить файл или сборку «WebGrease» или один из его зависимостей

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. 

у меня был web.config как:

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

После отсылая некоторые ответы на SO, я изменил его:

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

Но до сих пор ее не работает.

В чем может быть проблема?

Edit:

enter image description here

Edit 2:

Снова следующее сообщение об ошибке после установки пакета:

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> 

Пожалуйста, помогите мне, я первый раз работал над MVC4 Kendu Применение ,

+0

ли узел существуют на диске? – scheien

+0

@scheien как проверить это? –

+0

Проверьте/bin/debug в директории проекта, или вы можете записать ссылки в проекте. Отсутствующие сборки должны иметь желтую иконку. – scheien

ответ

53

У меня была та же проблема.

Эта проблема была решена путем

1) выполняется пакет консоли диспетчера

2) в консоли, введите: 'Install-Package Microsoft.AspNet.Web.Optimization'

, которые разрешены все неправильные зависимости.

+3

после обновления WebGrease до пакета nuget 1.6.0, перенаправление привязки не обновлялось. Итак, переустановка Microsoft.AspNet.Web.Optimization исправлена ​​для меня. В конце концов, мой web.config имеет правильную запись сейчас: https: //gist.github.com/jpolvora/8864750c4e3fd9f3d961 –

+0

Jone Polvora, которая исправила проблему для меня. – AshleyS

+0

Для меня требуется следующее: update-package -reinstall Microsoft.AspNet.Web.Optimization –

3

Проверьте содержимое раздела runtime/assemblyBinding в web.config. Я установил неверно зарегистрированные элементы зависимых элементов после установки пакета Kendo UI. Я вручную удалил дубликаты, и проблема исчезла.

3

мне пришлось бежать Update-Package -Reinstall Microsoft.AspNet.Web.Optimization

Это обновил мой web.config и все ссылки

3

Заменить:

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

Для:

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

Эта проблема возникает Whe n ваша ссылочная dll может отличаться от вашей конфигурации web.config. Вам необходимо переустановить dll.

1

Просто обновление WebGrease 1,6

PM> Update-Package WebGrease -Version 1.6 
Смежные вопросы

 Смежные вопросы