2017-08-21 206 views
8

今朝私はVS 2017 15.3にアップグレードしました。今では私の参照のほとんどが黄色の三角形になっています。プロジェクトは正常に実行されます(ビルドはCLIとVSで良く、復元は複数回実行されています)、これは残っています(実際にはdotnetcore 2.0でも良いです)。他の誰かがこれを起こしたのか、それとも示唆を持っていますか?ありがとう。また>https://www.dropbox.com/s/c85yuyjiu4pnget/project.assets?dl=0VS 2017 15.3黄色い三角形の参照先

Yellow triangles in Solution Explorer

グレーアウトusingsと赤の参照の問題すべてが構築され、正常に動作が -

project.assets.jsonファイルへのリンク。

enter image description here

Warnings Window

+0

プロジェクトで.netが間違っている可能性がありますか?これは参考になるかもしれません:https://stackoverflow.com/questions/30484196/all-project-references-have-yellow-triangles-every-time-solution-is-loaded – BladeMight

+0

これは、参照へのDLL。 – Sameer

+0

フィードバックありがとうございますが、ソリューションとプロジェクトはアップグレード前と同じように正常に実行されます。それは奇妙な部分です。すべてがナゲットパッケージなのでパスはありません。 VS 2017 15.3の主な変更点は、黄色い三角形の意味ですか? – dodegaard

答えて

6

更新:VisualStudioをのTwitterアカウントが、これはバグであり、彼らはこの上で、今後の修正に取り組んでいることに注意することは、私に答えた....

I私のポストに2つの回答があります:

1)灰色で示されている使用上の問題は、実際はReSharperの問題でした。 VS 2017 15.3にアップグレードし、R#を使用する場合は、2017.2にも更新してください。

2)黄色い三角形の問題はVisual Studioチームが調べていますが、正直なところ、これらの参照は低レベルの依存関係(つまり、異なるレベルのNewtonsoft)に強制されているという警告にリンクされていると思います。プレビュー急速に進化する.NET 2.0の世界は、この問題を悪化させる可能性があります。黄色の三角形は、伝統的には欠落を意味していましたが、警告が関連しているかどうかを確認し、依存関係のチェーンを確認します。私はVSチームから戻ってくると、この回答を更新します(Twitterでこれを手助けしてくれたDamian Edwards + Scott Hanselmanに叫んでください)。

1

私の(.NET 4.6.1)ソリューションのプロジェクトをVS2017に付属の新しい.NET標準.csprojフォーマットに更新した後、黄色い三角形が表示される問題が発生しました。私が警告を受け取っていた参照は、ProjectReference型でした(問題のプロジェクトの共通パッケージについてはPackageReferenceに流出しているように見えましたが)。

私はビルドの警告がありませんでした。何が原因であるかを示す冗長なビルド出力には何もありませんでした。

私のソリューションでは、すべての警告を1つのプロジェクトに戻すことができました。私は自分のソリューションからそのプロジェクトを削除してからそれを追加し、必要なプロジェクト参照のみを再追加することで解決できました。

新しい推移従属性のサポートによって、不要なプロジェクト参照(または循環的な可能性がある)に関連する問題が発生したようです。プロジェクトを削除して最小値がProjectReferenceになった後、推移的な依存関係のサポートを利用して依存関係を伝播した後、警告はすべて消えてしまいました。

これはまた、VS2017ビルドツールのみがインストールされている(完全なIDEではなく)CIサーバー上でコマンドラインmsbuildがビルドを開始したときに問題のプロジェクトがコンパイルに失敗したという問題も解決しました。

0

私は同じ問題を抱えていましたが、参照のいくつかは黄色の三角でマークされていました。しかし、私はプロジェクトを構築して実行することができました。 私はこの答えからの手順に従うことにより、これらの警告を削除するために管理: .Net 2015 References with yellow triangle for Nuget packages on portable libraries

私は、Visual Studioのトレースをオンに、私はすべてのuncorrectlyロードされた参照用のログファイルに次の警告を持っていた:間

が発生しました紛争'Reference:Microsoft.Win32.Primitives、Version = 4.0.2.0、Culture =ニュートラル、PublicKeyToken = b03f5f7f11d50a3a、processorArchitecture = MSIL'および 'リファレンス:C:\ Program Files(x86)\ Visual Studio \ MSBuild \ Microsoft \ Microsoft.NET .Build.Extensions \ net461 \ ref \ Microsoft.Win32.Primitives.dll 'と入力します。 AssemblyVersion '4.0.3.0'がより大きいため '参照:C:\ Program Files(x86)\ Visual Studio \ MSBuild \ Microsoft \ Microsoft.NET.Build.Extensions \ net461 \ ref \ Microsoft.Win32.Primitives.dll'を選択します。 '4.0.2.0'。

は、正確には、私は次のステップでした:私.csprojファイルから

  1. 削除エラー状態を
  2. 削除
  3. がnot-削除さ.csprojファイルにない仕掛けの参照用<Private>true</Private>パラメータMSBuildのフォルダを対応するにlibにと\ refのフォルダ\ からパッケージをロードしました。
  4. 溶液中\パッケージフォルダからパッケージを削除しました。
  5. 復元されたナゲットパッケージ。

私はすべてのこれらのステップが必要であることを確認しないんだけど、それは私のために働きました。私は間違ったフォーマットを持つことになったbundleconfig.jsonをいじりました

enter image description here

0

私はasp.netのコア事業で同様の問題がありました。

関連する問題