web-dev-qa-db-ja.com

ファイルまたはアセンブリ 'Microsoft.CodeAnalysis、バージョン= 1.3.1.0、カルチャ=ニュートラル、PublicKeyToken = 31bf3856ad364e35'、またはそのいずれかの依存関係をロードできませんでした

昨夜更新がありましたが、今はCtrl + 'を押すことができません。 VS 2015でのコード提案については、次のようなエラーメッセージが表示されます。

ファイルまたはアセンブリ 'Microsoft.CodeAnalysis、バージョン= 1.3.1.0、カルチャ=ニュートラル、PublicKeyToken = 31bf3856ad364e35'、またはその依存関係の1つをロードできませんでした。システムは、指定されたファイルを見つけることができません。

私はまだ構築して開発することができますが、これはこの機能なしでは本当に面倒です。私はそれを認めます、私は柔らかくなっています!

このバグを修正するための提案がありますか?

67
Captain America

私はVisual Studio 2015 Update 2でも同じ問題を抱えていましたが、すべてのソリューションでこの問題をグローバルに解決するには、Visual Studio 2015 Update 3に更新してください。これがリンクです: ここからダウンロードしてください

28
shopOFF

@CaptainAmericaが指摘したように、解決策はNuGetからCodeDomアセンブリを更新することです。 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
56
Vilhelm H.

いずれかのオプションが機能しない場合は、ここでこのシナリオを処理するための詳細なガイドがあります。

まず第一にバージョンが重要です。エラーに記載されているバージョンに注意してください...

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はそれをあなたのマシンのグローバルレベルでも保存します。パスはこのようなものになります...

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

あなたは従うことによってあなたの道を知ることができます...

%USERPROFILE%\.nuget\packages

これで、必要なMicrosoft.CodeAnalysis.dllが次のフォルダに表示されます。

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

上記のパスにはバージョン番号(1.3.1)が含まれています。あなたのバージョンが違う場合は、そのバージョンフォルダを調べてください。

あなたはあなたとdllを持っているので、あなたがする必要があるのはGACにそのdllを追加することだけです。そのためには、 GacUtil.exe が必要になります。

このファイルは既にVisual Studioと共にインストールされます。 Cドライブで「GacUtil」を検索できます。私のためにそれは道の下にあります...

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

今すぐ管理者としてコマンドプロンプトを実行し、GacUtilを含むパスに現在のディレクトリを移動します。 GACにそのdllをインストールするための下記のコマンドを実行します。

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

基本的に我々はグローバルにインストールしたdllへのパスを提供します。インストールが成功するとメッセージが表示されます。

それで全部です!もう一度Visual Studioを起動してください。そうすればこの問題は解決します。

23

私はこれを見つけました page そして "ASP.NETとの互換性"の下のページの一番下にそれはASP.NETがMicrosoft.CodeAnalysisアセンブリを更新するためにnugetパッケージMicrosoft.CodeDom.Providers.DotNetCompilerPlatformを使うことを言います。それで、私はDotNetCompilerPlatformパッケージを1.0.0から1.0.3に更新しました、そしてそれは再び働きます!ええ、人生はまた良いです!

11
Captain America

すべてのソリューションでこの問題を解決するには、 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にインストールするには、 https://github.com/LTruijens/powershell-gac のPowerShellスクリプトを使用しました。

最後に、PowerShellから次のコマンドを使用してアセンブリをGACにインストールしました。

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

私も同じ問題に直面していました。私のビジュアルスタジオ2015のバージョンは2.0でした。私はそれをバージョン3にアップグレードしました。

問題は解決しました!

3
AbhijeetGaikwad

私はこのようにして問題を解決しました:

Visual Studio 2015をpdateに更新します

メニューから表示=>通知=> Visual Studio Updateを選び、更新ボタンをクリックしました。

2
MarianNikolov

私はNuGetパッケージの中に足りないアセンブリを見つけました(最初のものが解決された後に複数の他がありました): https://www.nuget.org/packages/Microsoft.Net.Compilers/1.3.1-rc

DevコンソールからGacUtilを使ってそれらをインストールしました。

0
CoolMcGrrr

私はすべてのNuget Microsoftの依存関係をv2.0.0に更新することによってこの問題を修正しました。これはVS 2017を使用していました。プレビュー版を使用していました。

0
Wilkoteq

私の場合は、Live Unit Testingをオフにして手動でテストを実行した後にエラーが発生しました。一部のテストでは上記のエラーメッセージが表示されて失敗します。

[テスト] - > [ライブユニットテスト] - > [オプション]の順に選択し、[Delete Persisted Data]を発行して問題を解決しました。

0
MonteChristo

私はソリューション内にある.vsフォルダを削除することで同様の問題を修正しました。

0
HonzaCZE