Partager via


Changement de TargetFramework de netcoreapp en net

La valeur de la propriété MSBuild TargetFramework est passée de netcoreapp3.1 à net5.0. Cela peut interrompre le code qui repose sur l’analyse de la valeur de TargetFramework.

Version introduite

5,0

Description de la modification

Dans .NET Core 1.0 - 3.1, la valeur de la propriété MSBuild TargetFramework commence par netcoreapp, par exemple, netcoreapp3.1 pour les applications qui ciblent .NET Core 3.1. À compter de .NET 5, cette valeur est simplifiée pour commencer parnet, par exemple, net5.0 pour .NET 5.0.

Pour plus d’informations, consultez Avenir de .NET Standard et Noms des versions cibles de .Net 5.

Raison du changement

  • Simplifie la valeur TargetFramework.
  • Permet aux projets d’inclure une TargetPlatform dans la propriété TargetFramework.

Si vous avez une logique qui analyse la valeur de TargetFramework, vous devez la mettre à jour. Par exemple, la condition MSBuild suivante s’appuie sur la valeur de TargetFramework.

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

Pour cette exigence, vous pouvez mettre à jour le code pour comparer l’identificateur de la version cible de .Net Framework à la place.

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

API affectées

N/A