ASP.NET Core 2.2 est sorti. Quoi de neuf (2 sur 3)

Le 4 décembre, ASP.NET Core 2.2 a été publié ; il est inclus dans la fourniture de .NET Core 2.2. J'ai récemment écrit sur .NET Core 2.2 et maintenant je dois développer le sujet en profondeur. Voyons quelles nouvelles choses ont été préparées pour nous.



Où trouver


Le SDK .NET Core (2.2.100) peut être téléchargé à partir d'un emplacement standard et utilisé à la fois sur votre machine de développement et sur les serveurs. De nouveaux hébergements Windows Server, des programmes d'installation et des archives binaires pour la mise à jour des serveurs y sont disponibles.


Cette version est dédiée à la mise à jour de .NET Core , ASP.NET Core et Entity Framework Core vers la version 2.2.0. La nouvelle version du SDK est la 2.2.100. Les exigences suivantes pour la version de Visual Studio sont les suivantes:


  • Visual Studio version 2017 15.9 et versions ultérieures
  • Visual Studio pour Mac version 7.7 et versions ultérieures
  • Visual Studio Code C # extension version 1.17.1 et versions ultérieures

Visual Studio 2019 16.0 Preview 1, qui a également été publié le 4 décembre, vous permet de connecter éventuellement le SDK .NET Core 2.2.100.


Quoi de neuf


L'idée principale de cette version d'ASP.NET Core est d'améliorer la productivité des développeurs et les fonctionnalités de la plate-forme, en mettant particulièrement l'accent sur l'API Web / HTTP. Comme toujours, nous nous sommes également occupés de la performance. Nous avons déjà écrit sur ces fonctionnalités dans le cadre des versions précédentes, et en conséquence, vous pouvez lire la description détaillée sur les liens:



Note du traducteur : tous les liens mènent à des sources originales en anglais. Si vous voulez voir une partie de ceci traduit pour Habré - écrivez dans les commentaires!


Intégration du bilan de santé avec BeatPulse


Le projet BeatPulse prend désormais en charge la nouvelle API Health Checks. En fait, vous pouvez désormais ajouter rapidement et facilement des chèques compatibles avec de nombreux systèmes et dépendances populaires, leur prise en charge dans BeatPulse est excellente. Voici ce que BeatPulse dit à propos de la nouvelle API Health Checks:


«BeatPulse est un projet communautaire conçu pour fournir des mécanismes de vérification de l'état des applications, du réseau et d'un large éventail de services variés que l'on trouve souvent dans les entreprises, tels que SQL Server, MySQL, PostgreSQL, Redis, Kafka et bien d'autres. Lorsque Microsoft a annoncé ASP.NET Core Health Checks dans la feuille de route de la version 2.2, l'équipe BeatPulse a porté tous les packages et fonctionnalités existants liés à ces vérifications vers l'abstraction Microsoft Health Checks du référentiel AspNetCore.Diagnostics.HealthChecks . De plus, l'équipe BeatPulse a ajouté d'autres fonctionnalités, telles que la surveillance de la fréquence cardiaque (Application Insights et Prometheus), les messages d'erreur et l'interface utilisateur, dans laquelle vous pouvez configurer les paramètres de surveillance et regarder l'écran global avec l'état de la santé du système. Cette interface utilisateur est distribuée sous la forme d'une image Docker publiée sur le Docker Hub. "


Et ensuite


Après l'annonce des plans pour ASP.NET Core 2.2, plusieurs fonctionnalités ont été publiées qui ne figurent pas dans la liste ci-dessus, notamment l'API pour l'autorisation via IdentityServer4, la génération de code client pour l'API ouverte (Swagger) et l'utilitaire de ligne de commande pour HTTP REPL. Ces fonctionnalités sont toujours en cours de développement et ne sont pas prêtes à être publiées. Néanmoins, nous espérons les finaliser et les publier en tant que modules complémentaires dans les prochains mois. Restez avec nous un peu pendant que nous les amenons à l'état de préparation et merci d'avance.


Comment migrer vers ASP.NET Core 2.2


Pour migrer un projet ASP.NET Core de 2.1 à 2.2, ouvrez le fichier csproj du projet correspondant et modifiez la valeur netcoreapp2.2 en netcoreapp2.2 . Si vous ciblez le .NET Framework 4.x, vous ne devriez pas.


Au final, vous devrez mettre à jour les liens vers les packages NuGet pour correspondre aux dernières versions stables. Il est important que les projets ciblant le .NET Core (contrairement au .NET Framework) n'indiquent pas la version du package Microsoft.AspNetCore.App , car cette connexion est automatiquement contrôlée par le SDK lui-même. Si vous faites cela, vous recevrez un avertissement lors de la construction.


Plus d'informations sur la mise à niveau vers ASP.NET Core 2.2 sont disponibles ici .


Soutenir le cycle de vie


ASP.NET Core 2.2 est la dernière version du formateur de versions actuelles. Il s'agit de la première version depuis la sortie de 2.1 LTS, qui annonce la différence entre les trains LTS et Current. Le train actuel est l'endroit où les dernières fonctionnalités, améliorations et corrections de bugs sont appliquées, et il est recommandé pour la plupart des utilisateurs. Notez que LTS et Current reçoivent des mises à jour de sécurité de service et des mises à jour de stabilité critiques. Nous pouvons maintenant supposer que 2.2 sera la dernière mise à jour hors service du cycle de vie de la ligne 2.x, et les clients qui ne veulent pas utiliser LTS devront migrer vers 3.0 GA dans les 3 mois suivant sa sortie au second semestre 2019, sinon ils risquent de se retrouver sans soutien.


Plus d'informations sur les politiques de prise en charge de .NET Core sont disponibles ici .


Disponibilité via Azure App Service


Le SDK .NET Core 2.2, le runtime .NET et le module IIS mis à jour pour ASP.NET Core sont actuellement en cours de déploiement sur Azure App Service dans le monde entier. Nous souhaitons achever ce processus d'ici fin décembre 2018.


Certaines régions peuvent recevoir un runtime mis à jour avant de mettre à jour le module IIS (ANCM), qui est requis par défaut pour les projets ciblant ASP.NET Core 2.2. De plus, il s'agit d'une exigence de base pour un nouvel hébergement en cours. Si vous voyez des erreurs de démarrage après le déploiement sur Azure App Service, essayez de configurer votre projet pour utiliser la version existante d'ANCM, cela se fait en définissant la propriété AspNetCoreModule sur " AspNetCoreModule ", par exemple:


 <PropertyGroup> <TargetFramework>netcoreapp2.2</TargetFramework> <AspNetCoreModuleName>AspNetCoreModule</AspNetCoreModuleName> <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel> </PropertyGroup> 

Dès que la région cible est mise à jour vers la dernière version d'ANCM, vous pouvez supprimer ces propriétés partout et redéployer des applications. Par conséquent, vous utiliserez la dernière version d'ANCM.


Cette version, entre autres, ajoute la prise en charge de l'architecture 64 bits sur Azure App Service pour .NET Core. Si vous exécutez votre application ASP.NET Core sur .NET Core 2.2 avec l'hébergement en cours activé, vous pouvez simplement activer l'option «64 bits» dans le portail Azure , et l'ensemble du site commencera à s'exécuter dans un processus 64 bits. Des informations supplémentaires sur le fonctionnement des applications ASP.NET Core dans un processus 64 bits sur Azure App Service avec d'autres configurations sont décrites dans un article distinct .


Rétroaction


Comme toujours, n'hésitez pas à laisser des commentaires sous forme d'âne à https://github.com/aspnet/AspNetCore . C'est important!


Note du traducteur : il serait également bien d'écrire quelque chose dans les commentaires sur Habré. C'est important!


N'oubliez pas que les billets pour DotNext à partir du 1er janvier augmenteront de prix. Personnel - pour mille, et Standard - pour deux mille. Les détails sur Early Bird sont sur le site .

Source: https://habr.com/ru/post/fr433184/


All Articles