0

私は最近、すべてのプロジェクトを自動NuGet復元に首尾よく切り替えました。これを行うには、私はthis guideに続いた。すべてうまくいった、私は/packagesフォルダを削除し、私の心のコンテンツに復元することができました。NuGet NuGetsの自動復元とインストール

このガイドの手順の1つで、.csprojファイルを編集し、EnsureNuGetPackageBuildImportsという関連要素を削除する必要があります。

私が今問題を抱えているのは、自分のプロジェクトライブラリに入ったり降格したりした後、NuGetがという関連要素を自動的に.csprojファイルに追加したようです。

NuGetがこれを行なわないように変更する必要がある他の設定がありますか? NuGet関連の変更を行うたびに、.csprojファイルを編集する必要はありません。

答えて

1

NuGetがこれを行なわないように変更する必要がある他の設定がありますか?

あなたのプロジェクトライブラリの1つに入るとダウングレードすると答えはありません。

ターゲット "EnsureNuGetPackageBuildImports"は、インポートされた.propsファイルまたは.targetsファイルが実際に古い方法でインポートされることを保証するために使用されます。 NuGetはNuGet 2.5以降、NuGet MSBuildサポートをサポートしています。

Nuget 2.7+以降、MicrosoftはVS2015で 'NuGet Package Restoreを有効にする'機能をサポートしていないため、古いソリューションを移行するか、新しいソリューションに機能を追加するために手動で変更する必要があります。 Nuget Automatic Package RestoreはNuget 2.7以降で変更されました。残念ながら、それは後方互換性のない変更のように見えます。私たちには2.7以上の開発者がいますが、現在2.7以上にアップグレードする必要があります。この場合、NuGetは、プロジェクトライブラリの1つに移動したり、ダウングレードしたりするときに、関連する要素を.csprojファイルに自動的に追加します(EnsureNuGetPackageBuildImports)。

これを解決するには、パッケージの自動復元のための古いメソッドと新しいメソッドを混在させないでください(自動パッケージ復元を使用するとそのファイルを削除します)。

また、ライブラリは、PSスクリプトは、あなたがより便利にそれを削除することができやむを得ないものがございますされに行くと、あなたのプロジェクトのひとつをダウングレードする場合: DisableNuGetPackageRestore.ps1

関連する問題