После обновления до webgrease 1.5.1.25624 из nuget произойдет событие System.IO.FileLoadException

Я - страница смерти asp.net, это происходит после того, как я обновил webgrease и bootstrap для mvc4, используя nuget.

Ошибка сервера в приложении "/".


Не удалось загрузить файл или сборку "WebGrease" или один из ее зависимостей. Сильная подпись подписи не может быть проверена. возможно, была подделана сборка, или была задержка подписана, но не полностью подписанный с правильным личным ключом. (Исключение из HRESULT: 0x80131045) Описание: Необработанное исключение произошло во время выполнение текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в код.

Сведения об исключении: System.IO.FileLoadException: не удалось загрузить файл или сборку "WebGrease" или одну из ее зависимостей. Сильное имя подпись не может быть проверена. Возможно, сборка была подделана с, или это была задержка, подписанная, но не полностью подписанная с правильным закрытый ключ. (Исключение из HRESULT: 0x80131045)

Ошибка источника:

Необработанное исключение было создано во время выполнения текущий веб-запрос. Информация о происхождении и местонахождении исключение может быть идентифицировано с использованием трассы стека исключений ниже.

След загрузки сборок: следующая информация может быть полезна для определить, почему сборка "WebGrease" не может быть загружена.


Информация о версии: Microsoft.NET Framework Версия: 4.0.30319; Версия ASP.NET: 4.0.30319.18045

Ответ 1

Принудительно удалите пакет с помощью консоли диспетчера пакетов

uninstall-package -f WebGrease

затем установите предыдущую версию 1.3.0, используя следующую команду

install-package WebGrease -Version 1.3.0

Откройте файл Web.config и замените ниже зависимости от тега времени выполнения

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

Ответ 2

Мне пришлось добавить следующий код в web.config:

    <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
        </dependentAssembly>
...

Ответ 3

У меня была такая же ошибка. Это произошло потому, что nuget обновил dll WebGrease, но не обновил файл web.config(особая версия используемой dll).

Итак, я изменил следующую строку в своем web.config:

 <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />

to

<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />

Номер версии (1.6.5135.21930) Я взял свойства dll.

После этого все работает правильно.

Ответ 4

Были обнаружены ошибки в сильной сигнатуре подписи сборки и поэтому активно работали над выпуском обновленной версии как можно скорее. На данный момент мы не зарегистрировали пакет WebGrease 1.5.1 с nuget.org.

Ответ 5

Попробуйте следующее: проверьте, находятся ли указанные выше DLL в GAC. Если это так, в вашей папке bin вашего приложения проверьте, присутствует ли приведенная выше DLL, если они удаляют их из вашей справки.