次の方法で共有


TargetFramework が netcoreapp から net に変更される

MSBuild TargetFramework プロパティの値が netcoreapp3.1 から net5.0 に変更されました。 これにより、 TargetFrameworkの値の解析に依存するコードが破損する可能性があります。

導入されたバージョン

5.0

変更の説明

.NET Core 1.0 から 3.1 では、MSBuild TargetFramework プロパティの値は netcoreappで始まります。たとえば、.NET Core 3.1 を対象とするアプリの netcoreapp3.1 。 .NET 5 以降では、.NET 5.0 のnetなど、net5.0から始めるだけでこの値が簡略化されます。

詳細については、. NET 5 の .NET Standard および ターゲット フレームワーク名の将来を参照してください。

変更の理由

  • TargetFramework値を簡略化します。
  • TargetPlatform プロパティにプロジェクトがTargetFrameworkを含めることができるようにします。

TargetFrameworkの値を解析するロジックがある場合は、それを更新する必要があります。 たとえば、次の MSBuild 条件は、 TargetFrameworkの値に依存します。

<PropertyGroup Condition="$(TargetFramework.StartsWith('netcoreapp'))">

この要件では、代わりにターゲット フレームワーク識別子を比較するようにコードを更新できます。

<PropertyGroup Condition="'$([MSBuild]::GetTargetFrameworkIdentifier('$(TargetFramework)'))' == '.NETCoreApp'">

影響を受ける API

なし