Métapaquet Microsoft.AspNetCore.App pour ASP.NET Core 2.1 ou version ultérieureMicrosoft.AspNetCore.App metapackage for ASP.NET Core 2.1 or later

Cette fonctionnalité nécessite ASP.NET Core 2.1 ou une version ultérieure ciblant .NET Core 2.1 ou version ultérieure.This feature requires ASP.NET Core 2.1 or later targeting .NET Core 2.1 or later.

Le métapackage Microsoft.AspNetCore.App pour ASP.NET Core :The Microsoft.AspNetCore.App metapackage for ASP.NET Core:

  • N’inclut pas les dépendances tierces sauf pour Json.NET, Remotion.Linq et IX-Async.Does not include third-party dependencies except for Json.NET, Remotion.Linq, and IX-Async. Ces dépendances tierces sont considérées comme nécessaires pour assurer le fonctionnement des principales fonctionnalités des frameworks.These 3rd-party dependencies are deemed necessary to ensure the major frameworks features function.
  • Inclut tous les packages pris en charge par l’équipe ASP.NET Core, sauf ceux qui contiennent des dépendances tierces (autres que celles mentionnées au-dessus).Includes all supported packages by the ASP.NET Core team except those that contain third-party dependencies (other than those previously mentioned).
  • Inclut tous les packages pris en charge par l’équipe Entity Framework Core, sauf ceux qui contiennent des dépendances tierces (autres que celles mentionnées au-dessus).Includes all supported packages by the Entity Framework Core team except those that contain third-party dependencies (other than those previously mentioned).

Toutes les fonctionnalités ASP.NET Core 2.1 et ultérieur et Entity Framework Core 2.1 et ultérieur sont incluses dans le package Microsoft.AspNetCore.App.All the features of ASP.NET Core 2.1 and later and Entity Framework Core 2.1 and later are included in the Microsoft.AspNetCore.App package. Les modèles de projet par défaut ciblant ASP.NET Core 2.1 et ultérieur utilisent ce package.The default project templates targeting ASP.NET Core 2.1 and later use this package. Nous recommandons que les applications ciblant ASP.NET Core 2.1 et ultérieur et Entity Framework Core 2.1 et ultérieur utilisent le package Microsoft.AspNetCore.App.We recommend applications targeting ASP.NET Core 2.1 and later and Entity Framework Core 2.1 and later use the Microsoft.AspNetCore.App package.

Le numéro de version du métapaquet Microsoft.AspNetCore.App représente la version minimale d’ASP.NET Core et la version d’Entity Framework Core.The version number of the Microsoft.AspNetCore.App metapackage represents the minimum ASP.NET Core version and Entity Framework Core version.

L’utilisation du métapackage Microsoft.AspNetCore.App offre des restrictions de version qui protègent votre application :Using the Microsoft.AspNetCore.App metapackage provides version restrictions that protect your app:

  • Si un package inclus a une dépendance transitive (non directe) sur un package dans Microsoft.AspNetCore.App et que ces numéros de version diffèrent, NuGet génère une erreur.If a package is included that has a transitive (not direct) dependency on a package in Microsoft.AspNetCore.App, and those version numbers differ, NuGet will generate an error.
  • Les autres packages ajoutés à votre application ne peuvent pas changer la version des packages inclus dans Microsoft.AspNetCore.App.Other packages added to your app cannot change the version of packages included in Microsoft.AspNetCore.App.
  • La cohérence des versions garantit une expérience fiable.Version consistency ensures a reliable experience. Microsoft.AspNetCore.App a été conçu pour empêcher des combinaisons de versions non testées de bits associés d’être utilisées ensemble dans la même application.Microsoft.AspNetCore.App was designed to prevent untested version combinations of related bits being used together in the same app.

Les applications qui utilisent le métapackage Microsoft.AspNetCore.App tirent automatiquement parti du framework partagé ASP.NET Core.Applications that use the Microsoft.AspNetCore.App metapackage automatically take advantage of the ASP.NET Core shared framework. Quand vous utilisez le métapackage Microsoft.AspNetCore.App, aucune des ressources des packages NuGet ASP.NET Core référencés n’est déployée avec l’application : le framework partagé ASP.NET Core contient ces ressources.When you use the Microsoft.AspNetCore.App metapackage, no assets from the referenced ASP.NET Core NuGet packages are deployed with the application—the ASP.NET Core shared framework contains these assets. Les ressources présentes dans le framework partagé sont précompilées afin d’améliorer la vitesse de démarrage des applications.The assets in the shared framework are precompiled to improve application startup time. Pour plus d’informations, consultez Le framework partagé.For more information, see The shared framework.

Le fichier de projet suivant référence le métapackage Microsoft.AspNetCore.App pour ASP.NET Core et représente un modèle ASP.NET Core 2.1 standard :The following project file references the Microsoft.AspNetCore.App metapackage for ASP.NET Core and represents a typical ASP.NET Core 2.1 template:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" />
  </ItemGroup>

</Project>

La balise précédente représente un modèle ASP.NET Core 2.1 et ultérieur typique.The preceding markup represents a typical ASP.NET Core 2.1 and later template. Il ne spécifie pas de numéro de version pour la référence du package Microsoft.AspNetCore.App.It doesn't specify a version number for the Microsoft.AspNetCore.App package reference. Lorsque la version n’est pas spécifiée, une version implicite est spécifiée par le kit SDK, autrement dit, Microsoft.NET.Sdk.Web.When the version is not specified, an implicit version is specified by the SDK, that is, Microsoft.NET.Sdk.Web. Nous vous recommandons de garder la version implicite spécifiée par le kit SDK et de ne pas définir de façon explicite le numéro de version sur la référence de package.We recommend relying on the implicit version specified by the SDK and not explicitly setting the version number on the package reference. Si vous avez des questions par rapport à cette approche, laissez un commentaire GitHub à la page Discussion concernant la version implicite de Microsoft.AspNetCore.App.If you have questions on this approach, leave a GitHub comment at the Discussion for the Microsoft.AspNetCore.App implicit version.

La version implicite est définie sur major.minor.0 pour les applications portables.The implicit version is set to major.minor.0 for portable apps. Le mécanisme de restauration par progression des frameworks partagés exécute l’application sur la dernière version compatible parmi les frameworks partagés installés.The shared framework roll-forward mechanism will run the app on the latest compatible version among the installed shared frameworks. Pour garantir l’utilisation de la même version en développement, test et production, vérifiez que la même version du framework partagé est installée dans tous les environnements.To guarantee the same version is used in development, test, and production, ensure the same version of the shared framework is installed in all environments. Pour les applications autonomes, le numéro de version implicite est défini sur le major.minor.patch du framework partagé inclus dans le kit SDK installé.For self contained apps, the implicit version number is set to the major.minor.patch of the shared framework bundled in the installed SDK.

La spécification d’un numéro de version sur la référence Microsoft.AspNetCore.App ne garantit pas que la version du framework partagé sera choisie.Specifying a version number on the Microsoft.AspNetCore.App reference does not guarantee that version of the shared framework will be chosen. Par exemple, supposons que la version « 2.1.1 » est spécifiée, mais que la version « 2.1.3 » est installée.For example, suppose version "2.1.1" is specified, but "2.1.3" is installed. Dans ce cas, l’application utilise « 2.1.3 ».In that case, the app will use "2.1.3". Même si ce n’est pas recommandé, vous pouvez désactiver la restauration par progression (correctif et/ou mineur).Although not recommended, you can disable roll forward (patch and/or minor). Pour plus d’informations sur la restauration par progression de l’hôte dotnet et sur la configuration de son comportement, consultez dotnet host roll forward.For more information regarding dotnet host roll-forward and how to configure its behavior, see dotnet host roll forward.

<Project Sdk doit avoir la valeur Microsoft.NET.Sdk.Web pour utiliser la version implicite Microsoft.AspNetCore.App.<Project Sdk must be set to Microsoft.NET.Sdk.Web to use the implicit version Microsoft.AspNetCore.App. Lorsque <Project Sdk="Microsoft.NET.Sdk"> (sans la fin .Web) est utilisé :When <Project Sdk="Microsoft.NET.Sdk"> (without the trailing .Web) is used:

  • L’avertissement suivant est généré :The following warning is generated:

    Avertissement NU1604 : La dépendance de projet Microsoft.AspNetCore.App ne contient pas de limite inférieure incluse. Incluez une limite inférieure dans la version de dépendance pour assurer des résultats de restauration cohérents.Warning NU1604: Project dependency Microsoft.AspNetCore.App does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results.

  • Il s’agit d’un problème connu avec le kit de développement logiciel (SDK) .NET Core 2.1.This is a known issue with the .NET Core 2.1 SDK.

Mettre à jour ASP.NET CoreUpdate ASP.NET Core

Le métapackage Microsoft.AspNetCore.App n’est pas un package traditionnel qui est mis à jour à partir de NuGet.The Microsoft.AspNetCore.App metapackage isn't a traditional package that's updated from NuGet. Semblable à Microsoft.NETCore.App, Microsoft.AspNetCore.App représente un runtime partagé avec une sémantique de version spéciale gérée en dehors de NuGet.Similar to Microsoft.NETCore.App, Microsoft.AspNetCore.App represents a shared runtime, which has special versioning semantics handled outside of NuGet. Pour plus d’informations, consultez Packages, métapackages et frameworks.For more information, see Packages, metapackages and frameworks.

Pour mettre à jour ASP.NET Core :To update ASP.NET Core:

  • Sur les ordinateurs de développement et les serveurs de builds : Téléchargez et installez le kit SDK .NET Core.On development machines and build servers: Download and install the .NET Core SDK.
  • Sur les serveurs de déploiement : Téléchargez et installez le runtime .NET Core.On deployment servers: Download and install the .NET Core runtime.

Les applications seront restaurées par progression jusqu’à la version installée la plus récente au moment de leur redémarrage.Applications will roll forward to the latest installed version on application restart. Vous n’avez pas besoin de mettre à jour le numéro de version Microsoft.AspNetCore.App dans le fichier projet.It's not necessary to update the Microsoft.AspNetCore.App version number in the project file. Pour plus d’informations, consultez Restaurer par progression des applications dépendantes du framework.For more information, see Framework-dependent apps roll forward.

Si votre application utilisait Microsoft.AspNetCore.All, consultez Migration de Microsoft.AspNetCore.All vers Microsoft.AspNetCore.App.If your application previously used Microsoft.AspNetCore.All, see Migrating from Microsoft.AspNetCore.All to Microsoft.AspNetCore.App.