.Net Frameworkバージョン(4.6.2から4.7.2)を更新した後、GetPathsOfAllDirectoriesAbove()を評価できない


12

私が取り組んでいるプロジェクトが.NET Framework 4.6.2から4.7.2にアップグレードされました。ビルド時に、自分のコードではないファイルで、次のエラーが発生します。

ここに画像の説明を入力してください

プロジェクトプロパティのビルドタブにも同じエラーが表示されます。

[2]

私は途方に暮れています-エラーを検索したところ、空になりました。誰かがこれに遭遇したり解決したことはありますか?

回答:


22

ビルドツールをアップグレードした後、MSBUILDからRoslynに変更されたようです。Microsoft.Managed.Core.targetsはRoslynターゲットファイルです。

次のNugetパッケージがインストールされている場合:

  • Microsoft.CodeDom.Providers.DotNetCompilerPlatform

  • Microsoft.Net.Compilers

その後、問題が発生している可能性があります。Microsoft.CodeDom.Providers.DotNetCompilerPlatformを2.xにアップグレードし、2番目のものを削除します。これで問題が解決します。


それは微妙ですが、あなたが言ったことはそれを理解するのに役立ちました-4.7.2へのアップデートは外出中に行われたため、実際には4.6.2しかありませんでした-そしてVisual StudioにSDKのダウンロードを行わせましたが、プロセスでは、MSBuildを使用しているときに(言ったように)、プロジェクトビルダーをRoslynに変換している必要があります。すべてを元に戻し、すでにインストールされている4.7.2 SDKを使用してロードすると、問題は解消されました...
Matt

ありがとう!! 私の場合、Microsoft.Net.Compilers 2.0を使用していましたが、バージョンに競合はなかったようですが、パッケージのアップグレード後にMicrosoft.Net.Compilers 3.4をインストールすると、この悪夢が始まりました。Microsoft.Net.Compilersをアンインストールしたところ、プロジェクトは
正常に

誤って投票しました。修正するのに1時間待つ必要があります。この問題はVS 2017 v2019にも関連しています。
smoore4

Microsoft.Net.Compilersを削除すると修正されました!+1
ベンジサンダース

0

同じエラーが発生しましたMicrosoft.Net.Compilers-2.x(vs2017)と3.x(vs2019)の間の互換性の問題-v3からv2へのダウングレードにより、VS2017のみが含まれていたビルドエージェントの問題が修正されました。v3では、roslyn-analyzersのリリース仕様に従ってVS 2019以降が必要です。

関連エラーごとにMethod 'System.String.GetPathsOfAllDirectoriesAbove' not found-VS2017は互換性についての手がかりであったCSPROJを開くことさえしませんでした。

VS 2017- Microsoft.Net.Compilersv3の不足している機能をインストールするCSPROJオプション

ここに画像の説明を入力してください

VS 2017-不足している機能のインストール

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.