Не удалось загрузить файл или сборку 'Microsoft.CodeAnalysis, версия= 1.3.1.0, культура=нейтральных, PublicKeyToken=31bf3856ad364e35' или один из его dependenc

обновление произошло прошлой ночью, и теперь я не могу сделать ctrl + '."для предложений кода в VS 2015. Появляется сообщение об ошибке, в котором говорится следующее:

не удалось загрузить файл или сборку 'Microsoft.CodeAnalysis, version= 1.3.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 ' или одна из его зависимостей. Система не может найти указанный файл.

Я еще могу строить и развивать, но это будет очень раздражать и без этого особенность. Признаюсь, я становлюсь мягкотелым!

У кого-нибудь есть предложение по исправлению этой ошибки?

9 ответов


У меня была такая же проблема с Visual Studio 2015 Update 2, чтобы решить проблему глобально для всех решений, обновите до Обновление Visual Studio 2015 3. Вот ссылка: скачать здесь


Как указал @CaptainAmerica, решение заключается в обновлении сборки CodeDom из NuGet. Следует указать, как это сделать в Visual Studio. Я нашел решение здесь:

https://www.nuget.org/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform/

в основном, в меню Visual Studio выберите:

Tools-> Nuget Package Manager -> Package Manager Console

в консоли, которая появляется в нижней части Visual Studio запустите это команда:

Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

если какой-либо из вариантов не работает, вот подробное руководство по обработке этого сценария....

прежде всего версия важна. Обратите внимание на версию, указанную в ошибке...

Could not load file or assembly 'Microsoft.CodeAnalysis, version= 1.3.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

если вы видите выше ошибку, это означает, что он не может найти версию 1.3.1. Теперь, пожалуйста, создайте новый проект VS. Нет предпочтений, это может быть просто простое консольное приложение. Теперь, когда шаблон проекта готов, перейдите в Диспетчер пакетов и выполните следующую команду с указанным вами версия...

Install-Package Microsoft.CodeAnalysis -Version 1.3.1

это установит все пакеты. Пусть он завершится. Как только все будет сделано. Нам совсем не нужен этот новый проект. Вы можете удалить его полностью. Серьезно! вы можете удалить его. Мы сделали это, потому что мы хотели, чтобы этот пакет был установлен на глобальном уровне nuget. Когда вы устанавливаете что-то, nuget сохраняет его на глобальном уровне вашей машины. Путь будет чем-то вроде этого...

C:\Users\<<Your Windows User>>\.nuget\packages

вы можете знать свой путь следующий...

%USERPROFILE%\.nuget\packages

теперь вы увидите ваш необходимый Microsoft.CodeAnalysis.dll файлы там в следующей папке...

C:\Users\<<Your Windows User>>\.nuget\packages\Microsoft.CodeAnalysis.Common.3.1\lib\net45

Пожалуйста, обратите внимание, что выше Путь содержит номер версии (1.3.1). Если ваша версия отличается, посмотрите в эту папку версии.

теперь, когда у вас есть dll с вами, все, что вам нужно сделать, это добавить эту dll в GAC. Для этого вам понадобится GacUtil.exe

этот файл Сделать уже установлен вместе с Visual Studio. Вы можете искать "GacUtil"в диске C. Для меня это было по пути...

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools

теперь запустите командную строку от имени администратора и перейдите в текущий каталог к пути, содержащему GacUtil. Выполните команду ниже, чтобы установить эту dll в GAC.

gacutil
 -i C:\Users\<<You Windows User>>\.nuget\packages\Microsoft.CodeAnalysis.Common.3.1\lib\net45\Mi
crosoft.CodeAnalysis.dll

в основном обеспечивая путь к dll мы установили глобально. Он покажет сообщение об успешной установке.

вот и все! Сейчас снова начинают свой визуальный Studio и вы получите эту проблему.


Я нашел это страница и в нижней части страницы в разделе " совместимость с ASP.NET-здесь сказано, что ASP.NET использует пакет nuget Microsoft.граф CodeDOM.Услуги поставщиков.DotNetCompilerPlatform для обновления Microsoft.CodeAnalysis сборки. Поэтому я обновил пакет DotNetCompilerPlatform с 1.0.0 до 1.0.3, и он снова работает! Да, жизнь снова хороша!


чтобы решить эту проблему для всех решений, мне нужно установить сборку Microsoft.CodeAnalysis.dll файлы непосредственно GAC-глобальный кэш сборок.

Я получил файл Microsoft.CodeAnalysis.dll файлы С C:/Users/[пользователь]/.nuget / пакеты / Microsoft.CodeAnalysis.Common/1.3.2/lib/portable-net45+win8/Microsoft.CodeAnalysis.dll файлы.

чтобы установить сборку в GAC, я использовал сценарий PowerShell из https://github.com/LTruijens/powershell-gac.

наконец, мне удалось установить сборку в GAC со следующей командой из PowerShell:

Add-GacAssembly [myPath]\Microsoft.CodeAnalysis.dll

Я также столкнулся с той же проблемой. Моя версия visual studio 2015 была 2.0. Я обновил его до версии 3.

проблема решена !!!


Я решил проблему таким образом:

обновить Visual studio 2015 до обновление 3

в меню выбираем Просмотр = > Уведомления => Обновление Visual Studio 3 и нажал кнопку Обновить.


я исправил эту проблему, обновив все зависимости NuGet Microsoft до v2.0.0. Это было использование VS 2017. Я использовал предварительную версию.


в моем случае ошибка произошла после выключения живого модульного тестирования и запуска тестов вручную.Некоторые тесты потерпят неудачу с вышеуказанным сообщением об ошибке.

переход в Test --> Live Unit Testing --> Options и выдача "удалить сохраненные данные" решили проблему.