netstandard1.x
を対象とするプロジェクトが .NET 9+ SDK を使用してビルドされると、警告が生成されるようになりました。
以前の動作
以前は、ビルド警告なしで .NET Standard 1.0 - .NET Standard 1.6 を対象とするプロジェクトをビルドできました。
新しい動作
.NET 9 以降では、.NET Standard 1.0 - .NET Standard 1.6 を対象とするプロジェクトをビルドすると、次の警告が生成されます。
警告NETSDK1215: 2.0 より前の .NET Standard をターゲットにすることは推奨されなくなりました。 詳細については、https://aka.ms/dotnet/dotnet-standard-guidance を参照してください。
導入されたバージョン
.NET 9 Preview 6
破壊的変更の種類
この変更は ソースの互換性に影響を与える可能性があります。
変更の理由
ビルド警告は、.NET Standard 2.0 または .NET 6 以降をターゲットにするようお客様に促すために導入されました。 .NET Standard 1.x を対象とする場合は、10 年以上前の .NET Framework 4.5 のサブセットに制限しています。 それ以来、多くのイノベーションが起こっていて、あなたはそれを逃してしまっています。 さらに、.NET Standard 1.x は、NuGet パッケージの詳細なセットとして配布され、大きなパッケージ依存関係グラフが作成され、プロジェクトのビルド時に多数のパッケージがダウンロードされます。
詳細については、「 .NET Standard 1.x をターゲットにすることの欠点は何ですか?」を参照してください。
推奨されるアクション
TargetFramework
プロパティをnetstandard2.0
またはnetstandard2.1
に更新します。
以前の .NET Standard バージョンを使用する必要がある場合は、プロジェクト ファイル (<CheckNotRecommendedTargetFramework>
ファイルなど) または false
ファイル内のにを設定して、ターゲット フレームワークのバージョン チェックをスキップできます。
<PropertyGroup>
...
<CheckNotRecommendedTargetFramework>false</CheckNotRecommendedTargetFramework>
</PropertyGroup>
または、プロジェクト ファイルの <NoWarn>
プロパティを使用して警告を抑制することもできます。
<PropertyGroup>
...
<!-- Disable "Targeting .NET Standard prior to 2.0 is no longer recommended." warning -->
<NoWarn>$(NoWarn);NETSDK1215</NoWarn>
</PropertyGroup>
影響を受ける API
なし
こちらも参照ください
.NET