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

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

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

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

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

У меня была такая же проблема с Visual Studio 2015 Update 2, чтобы решить проблему глобально для всех решений, обновив обновление Visual Studio 2015 Update 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\<>\.nuget\packages 

Вы можете узнать свой путь, следуя …

 %USERPROFILE%\.nuget\packages 

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

 C:\Users\<>\.nuget\packages\Microsoft.CodeAnalysis.Common\1.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\<>\.nuget\packages\Microsoft.CodeAnalysis.Common\1.3.1\lib\net45\Mi crosoft.CodeAnalysis.dll 

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

Это все! Теперь запустите Visual Studio снова, и вы устраните эту проблему.

Я нашел эту страницу и в нижней части страницы в разделе «Совместимость с ASP.NET» говорится, что ASP.NET использует пакет nuget Microsoft.CodeDom.Providers.DotNetCompilerPlatform для обновления сборок Microsoft.CodeAnalysis. Поэтому я обновил пакет DotNetCompilerPlatform с 1.0.0 до 1.0.3, и он снова работает! Да, жизнь снова хороша!

Чтобы решить эту проблему для всех решений, мне нужно было установить сборку Microsoft.CodeAnalysis.dll непосредственно в кэш GAC – Global Assemblies Cache .

Я получил файл Microsoft.CodeAnalysis.dll от C: / Users / [user] /. Nuget / packages / 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

в меню выберите View => Notifications => Visual Studio Update 3 и нажмите кнопку обновления.

Я исправил эту проблему, обновив все зависимости от Nuget Microsoft до версии 2.0. Это использовало VS 2017. Я использовал предварительную версию.

В моем случае ошибка произошла после отключения Live Unit Testing и запуска тестов вручную. Некоторые тесты завершились с ошибкой вышеописанным сообщением об ошибке.

Включение теста -> Тестирование Live Unit -> Параметры и выпуск «Удалить сохраненные данные» разрешили проблему.

  • Visual Studio 2015 чрезвычайно медленная
  • Первичные конструкторы больше не компилируются в VS2015
  • неразрешенный внешний символ __imp__fprintf и __imp____iob_func, SDL2
  • Функции C # 6.0, не работающие с Visual Studio 2015
  • Как использовать инструменты Entity Framework Power Tools в Visual Studio 2015?
  • Ошибка отладки! Выражение: __acrt_first_block == header
  • Visual Studio 2015 или 2017 не обнаруживает модульные тесты
  • Каталог проекта Visual Studio 2015 Database Project содержит файл с расширением jfm
  • Приложение не запускается в визуальном студийном эмуляторе для Android в visual studio 2015
  • Несколько ошибок Установка Visual Studio 2015 Community Edition
  • Как использовать c # 7 с Visual Studio 2015?
  • Interesting Posts

    Что такое sharedUserId в Android и как оно используется?

    Экспорт базы данных SQLite в файл csv в android

    Не удается получить доступ к Tomcat с использованием IP-адреса

    Используйте мое собственное приложение для Android / apk в качестве запуска / Замена главного экрана

    Мета-символ Java RegEx (.) И обычная точка?

    Как убедиться, что строка действительна JSON с использованием JSON.NET

    Динамически загружать функцию из DLL

    iOS8 – ограничения двусмысленно указывают на высоту нуля

    Swift playground – Как преобразовать строку с запятой в строку с десятичной запятой

    Excel «Внешняя таблица не находится в ожидаемом формате».

    Зачем нам нужен чистый виртуальный деструктор в C ++?

    Быстрый VNC от Windows до Mac?

    Что альтернатива угловым.копиям в угловом

    Можно ли использовать загрузочный диск linux также в качестве диска для хранения Windows?

    Получение исключения переполнения стека при объявлении большого массива

    Давайте будем гением компьютера.