anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 et 3.1
Anthony Giretti
Senior software developer chez Equisoft
http://anthonygiretti.com
anthony.giretti@gmail.com
anthonygiretti
INTRODUCTION
3- Les nouveautés en bref d’ASP.NET Core 3.1
1- Support des versions .NET Core et prise en charge d’ASP.NET Core
4- Mon expérience de migration d’ASP.NET Core 2.2 vers 3.1
2- Les nouveautés en bref d’ASP.NET Core 3.0
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
.NET Core 3.0
Version Date de sortie Niveau de support Fin du
support
.NET Core 3.1 03/12/2019 Support long terme ?
.NET Core 3.0 23/09/2019 Support court terme 03/03/2020
.NET Core 2.2 04/12/2018 Support court terme 23/12/2019
.NET Core 2.1 30/05/2018 Support long terme 21/08/2019
.NET Core 2.0 14/08/2017 Fin de vie 1/10/2018
.NET Core 1.1 16/11/2016 Fin de vie 27/06/2019
.NET Core 1.0 27/06/2016 Fin de vie 27/06/2019
anthonygiretti
Prise en charge d’ASP.NET Core
ASP.NET Core
1.x
ASP.NET Core
2.x
ASP.NET Core
3.x
.NET Framework
.NET Core
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
Nouvelle sérialisation JSON
Nouvelle sérialisation avec System.Text.Json
Plus performant que NewtonSoft.Json
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
Nouvelle sérialisation JSON
Possibilité de conserver NewtonSoft.Json
Microsoft. AspNetCore. Mvc. NewtonsoftJson
anthonygiretti
Plus besoin de référencer explicitement la librairie Microsoft.AspNetCore.App
Les nouveautés d’ASP.NET Core 3.0 en bref
ASP.NET Core Framework partagé
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
gRPC
gRPC est un framework RPC (Remote procedure call) et non pas un framework Microsoft.
Créé aux alentours de 2004 par Google Open sourcé en 2015
Apprécié pour ses performances
Introduction a gRPC dans ASP.NET Core 3
https://github.com/AnthonyGiretti/aspnetcore3-grpc-samples
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
Service worker
Permet de créer un service Windows à partir d’un template ASP.NET Core avec Sc Tool (sc.exe)
Rien de révolutionnaire, similaire à Topshelf (console app -> service Windows)
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
Service worker
anthonygiretti
Création d’applications web l’aide de C# plutôt que JavaScript. (WebAssembly et Mono en arrière)
Les nouveautés d’ASP.NET Core 3.0 en bref
Blazor
anthonygiretti
Les nouveautés d’ASP.NET Core 3.0 en bref
Autres
SignalR: Reconnexion automatique + nouveaux gestionnaires d’évènements
Amélioration des performances
Amélioration des rapports d’erreur dans IIS
HTTP/2 activé par défaut
Amélioration de Kestrel
Et bien d‘autre encore…..
anthonygiretti
Les nouveautés d’ASP.NET Core 3.1 en bref
Amélioration essentiellement sur Blazor
Prise en charge des files d’attente partagées dans HTTP.sys (serveur web pour ASP.NET
Core roulant sur windows seulement)
Amélioration des cookies SameSite (Projet conçu pour offrir une protection contre les
attaques CSRF)
anthonygiretti
Mon expérience de migration d’ASP.NET Core 2.2
vers ASP.NET Core 3.0
Expérience personnelle base sur mon repository de référence (WebAPI)
 https://github.com/AnthonyGiretti/commonfeatures-webapi-
aspnetcore/tree/master/WebApiDemo
Principaux défis:
- Mise a jour de certains packages problématiques (FluentValidation, Serilog en preview
plusieurs semaines)
- ILoggerFactory et IServiceProvider ne sont plus accessibles dans la DI et Startup.cs
Dans une moindre mesure dans le Startup.cs
- AddMvc -> AddControllers, UseMvc -> UseEndpoints
anthonygiretti
Demo !

Asp.net core 3

  • 1.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 et 3.1 Anthony Giretti Senior software developer chez Equisoft http://anthonygiretti.com anthony.giretti@gmail.com
  • 2.
    anthonygiretti INTRODUCTION 3- Les nouveautésen bref d’ASP.NET Core 3.1 1- Support des versions .NET Core et prise en charge d’ASP.NET Core 4- Mon expérience de migration d’ASP.NET Core 2.2 vers 3.1 2- Les nouveautés en bref d’ASP.NET Core 3.0
  • 3.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref .NET Core 3.0 Version Date de sortie Niveau de support Fin du support .NET Core 3.1 03/12/2019 Support long terme ? .NET Core 3.0 23/09/2019 Support court terme 03/03/2020 .NET Core 2.2 04/12/2018 Support court terme 23/12/2019 .NET Core 2.1 30/05/2018 Support long terme 21/08/2019 .NET Core 2.0 14/08/2017 Fin de vie 1/10/2018 .NET Core 1.1 16/11/2016 Fin de vie 27/06/2019 .NET Core 1.0 27/06/2016 Fin de vie 27/06/2019
  • 4.
    anthonygiretti Prise en charged’ASP.NET Core ASP.NET Core 1.x ASP.NET Core 2.x ASP.NET Core 3.x .NET Framework .NET Core
  • 5.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref Nouvelle sérialisation JSON Nouvelle sérialisation avec System.Text.Json Plus performant que NewtonSoft.Json
  • 6.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref Nouvelle sérialisation JSON Possibilité de conserver NewtonSoft.Json Microsoft. AspNetCore. Mvc. NewtonsoftJson
  • 7.
    anthonygiretti Plus besoin deréférencer explicitement la librairie Microsoft.AspNetCore.App Les nouveautés d’ASP.NET Core 3.0 en bref ASP.NET Core Framework partagé
  • 8.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref gRPC gRPC est un framework RPC (Remote procedure call) et non pas un framework Microsoft. Créé aux alentours de 2004 par Google Open sourcé en 2015 Apprécié pour ses performances Introduction a gRPC dans ASP.NET Core 3 https://github.com/AnthonyGiretti/aspnetcore3-grpc-samples
  • 9.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref Service worker Permet de créer un service Windows à partir d’un template ASP.NET Core avec Sc Tool (sc.exe) Rien de révolutionnaire, similaire à Topshelf (console app -> service Windows)
  • 10.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref Service worker
  • 11.
    anthonygiretti Création d’applications webl’aide de C# plutôt que JavaScript. (WebAssembly et Mono en arrière) Les nouveautés d’ASP.NET Core 3.0 en bref Blazor
  • 12.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.0 en bref Autres SignalR: Reconnexion automatique + nouveaux gestionnaires d’évènements Amélioration des performances Amélioration des rapports d’erreur dans IIS HTTP/2 activé par défaut Amélioration de Kestrel Et bien d‘autre encore…..
  • 13.
    anthonygiretti Les nouveautés d’ASP.NETCore 3.1 en bref Amélioration essentiellement sur Blazor Prise en charge des files d’attente partagées dans HTTP.sys (serveur web pour ASP.NET Core roulant sur windows seulement) Amélioration des cookies SameSite (Projet conçu pour offrir une protection contre les attaques CSRF)
  • 14.
    anthonygiretti Mon expérience demigration d’ASP.NET Core 2.2 vers ASP.NET Core 3.0 Expérience personnelle base sur mon repository de référence (WebAPI)  https://github.com/AnthonyGiretti/commonfeatures-webapi- aspnetcore/tree/master/WebApiDemo Principaux défis: - Mise a jour de certains packages problématiques (FluentValidation, Serilog en preview plusieurs semaines) - ILoggerFactory et IServiceProvider ne sont plus accessibles dans la DI et Startup.cs Dans une moindre mesure dans le Startup.cs - AddMvc -> AddControllers, UseMvc -> UseEndpoints
  • 15.