Bagikan melalui


Perubahan TargetFramework dari netcoreapp ke net

Nilai untuk properti MSBuild TargetFramework diubah dari netcoreapp3.1 ke net5.0. Ini dapat merusak kode yang bergantung pada penguraian TargetFrameworknilai .

Versi yang diperkenalkan

5.0

Deskripsi perubahan

Di .NET Core 1.0 - 3.1, nilai untuk properti MSBuild TargetFramework dimulai dengan netcoreapp, misalnya, netcoreapp3.1 untuk aplikasi yang menargetkan .NET Core 3.1. Mulai dari .NET 5, nilai ini disederhanakan untuk memulai dengan net, misalnya, net5.0 untuk .NET 5.0.

Untuk informasi selengkapnya, lihat Masa depan nama kerangka kerja .NET Standard dan Target di .NET 5.

Alasan untuk berubah

  • Menyederhanakan TargetFramework nilai.
  • Memungkinkan proyek untuk menyertakan TargetPlatform dalam TargetFramework properti .

Jika Anda memiliki logika yang mengurai TargetFrameworknilai , Anda harus memperbaruinya. Misalnya, kondisi MSBuild berikut bergantung pada nilai TargetFramework.

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

Untuk persyaratan ini, Anda dapat memperbarui kode untuk membandingkan pengidentifikasi kerangka kerja target sebagai gantinya.

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

API yang Terpengaruh

T/A