SlideShare une entreprise Scribd logo
1  sur  36
ASP.NET Core MVC
Les nouveautés Microsoft ASP.NET core MVC
Speakers
 Georges DAMIEN
 Consultant .NET/Web @
Cellenza
 Microsoft MVP, MCSD, MCP
 Emilien Bassez
 Consultant .NET/Web @
Cellenza
 Jean Dumas de Rauly
 Consultant .NET @ Cellenza
Prérequis
 Visual Studio 2015 Update 3
 Visual Studio Code avec l’extension C#
1- Introduction
ASP.NET Core MVC
Historique – Pour rappel
• Pages asp
Asp Classic
• Page aspx
• viewState
Asp.net Web
Forms • Mvc version 1-2-
3-4-5
• Projets mvc et
web API séparés
Asp.net MVC
• Mvc et web API
et SignalR unifiés.
Asp.net core
Le model MVC
 MVC c’est avant tout un patron de conception qu’on retrouve
essentiellement dans les couches de présentation applicative.
 Il a été conçu pour la première fois dans les années 78-79.
 Il aide à mieux structurer le code en séparant les notions de
présentation pure à la notion de traitement de données.
 MVC pour Model-View-Controller.
Asp.Net Core ?
 C’est un nouveau framework refait de 0 avec pour maîtres mots :
 Cross-platform (Windows, Mac, Linux)
 IoT apps & Mobile backends
 Orienté Cloud (mais également On-Premise)
 Applications moderns (Web Apps)
 Open source (le code est sur GitHub)
 https://github.com/aspnet/home
Asp.Net Core : avantages
 Web UI et Web APIs unifiés
 Intégration simplifiée des frameworks Front
 Cloud ready configuration
 Injection de dépendance intégrée en natif
 Pipeline Http leger et modulaire
 Hébergement sous IIS ou “selfHost”
 Gestion avancée du versioning applicative
 Cross plateforme
 Open source
Asp.Net Core : Incovénients à date
 Framework Core pas complètement prêt
 Packages pas à jour
 Tooling incomplet
ASP.NET Core – vue macro
ASP.NET Core 1
Framework unifié pour MVC, Web API et SignalR
.NET Framework 4.6
Framework .net compatible
avec les anciennes librairies
.NET Core
Runtime allégé et optimisé
pour les serveurs et le cloud
ASP.NET MVC Core
Nouveau template ASP.NET MVC Core
Fondamentaux
Ce qui est (vraiment) nouveau
Séparation complète avec IIS
Prise en charge des requêtes entrantes plus clair
Démos
Application Console
Kestrel
 Léger
 Performant
 Multiplateforme
 Manque de fonctionnalité
WebListener
 Plus de fonctionnalités que Kestrel
 Moins performant
 Uniquement sur Windows
Et IIS ???
 N’est plus qu’un reverse proxy … mais bien intégré
Pipeline & Middelware
Pipeline simple
Arbre du pipeline
 Map : branche par chemin
 MapWhen : branche par predicat
 Run : feuille
Exemple de branches
Quand l’utiliser ?
 Logging
 Authentification
 Gestion d’erreur
 Compression des réponses http
 …
Démos
Custome Middelware
Injection de dépendances
 AddTransient : 1 instance par besoin
 AddSingleton : 1 instance pour l’application
 AddScoped : 1 instance par requête
Pas besoin de réinventer la roue
UseMvc
UseClaimsTransformation
UseRewriter
UseMvc
UseClaimsTransformation
UseRewriter
ASP.NET Core MVC : Front End
Nouveautés Front MVC
Web Root (wwwroot)
 Il s’agit d’un repertoire dédié par convention aux fichiers statiques de
l’application web.
 Le nom du repertoire est communement nommé : webroot
 On y trouve par exemple
 Les fichiers JS
 Les fichiers CSS
 Les images utilisées par le sites
 Les fonts Web
Bundling & minifying
bundleconfig.json
Bundling & minifying : commandes
 Commandes
dotnet bundle
dotnet bundle clean
dotnet bundle watch
Bower
_ViewImports.cshtml
• Référence les namespaces dans les vues
• Injecte des services dans les vues
• Ajouter des TagHelpers dans les vues
Tag Helpers
 Génération d’html coté serveur comme on le faisait avec les HtmlHelpers.
 Ne pas dénaturer le html de vos vues en introduisant moins de C# dans vos
fichier cshtml.
@Html.ActionLink("Register", "Register", "Account")
<a asp-controller="Account" asp-action="Register">Register</a>
<modal id="modalSearchEngine" title="Moteur de recherche">
<modal-body>
<h4>Coming soon</h4>
</modal-body>
<modal-footer>
<input type="button" value="Valider" />
</modal-footer>
</modal>
Tag Helpers
<div class="modal fade" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
<h4>Coming soon</h4>
</div>
<div class="modal-footer">
<input type="button" value="Valider" />
</div>
</div>
</div>
</div>
ViewComponents
 Remplace ChildAction
 A mis chemin entre le Controller / PartialView
Liens
 https://www.asp.net/core
 https://docs.microsoft.com/fr-fr/aspnet/core/
 https://docs.microsoft.com/en-us/aspnet/core/
 https://docs.microsoft.com/en-
us/aspnet/core/fundamentals/dependency-injection

Contenu connexe

Tendances

Tendances (20)

BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
 
Présentation de JEE et de son écosysteme
Présentation de JEE et de son écosystemePrésentation de JEE et de son écosysteme
Présentation de JEE et de son écosysteme
 
Chp2 - SOA
Chp2 - SOAChp2 - SOA
Chp2 - SOA
 
Modele mvc
Modele mvcModele mvc
Modele mvc
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with Overview
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Module 2 introduction à asp.net web forms
Module 2   introduction à asp.net web formsModule 2   introduction à asp.net web forms
Module 2 introduction à asp.net web forms
 
Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring Cloud
 
Ionic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,SassIonic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,Sass
 
Support JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.YoussfiSupport JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.Youssfi
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Apache Cassandra - Concepts et fonctionnalités
Apache Cassandra - Concepts et fonctionnalitésApache Cassandra - Concepts et fonctionnalités
Apache Cassandra - Concepts et fonctionnalités
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Cours design pattern m youssfi partie 7 facade bridge flyweight
Cours design pattern m youssfi partie 7 facade bridge flyweightCours design pattern m youssfi partie 7 facade bridge flyweight
Cours design pattern m youssfi partie 7 facade bridge flyweight
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 

En vedette

Functional Reactive Programming / Compositional Event Systems
Functional Reactive Programming / Compositional Event SystemsFunctional Reactive Programming / Compositional Event Systems
Functional Reactive Programming / Compositional Event Systems
Leonardo Borges
 

En vedette (20)

01 - [ASP.NET Core] Plénière
01 - [ASP.NET Core] Plénière 01 - [ASP.NET Core] Plénière
01 - [ASP.NET Core] Plénière
 
[XamarinDay] Développez en XAML avec Xamarin Forms
[XamarinDay] Développez en XAML avec Xamarin Forms[XamarinDay] Développez en XAML avec Xamarin Forms
[XamarinDay] Développez en XAML avec Xamarin Forms
 
03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA 03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA
 
05 - [ASP.NET Core] Devops : VSTS, Git, Azure, Docker, Linux
05 - [ASP.NET Core] Devops : VSTS, Git, Azure, Docker, Linux05 - [ASP.NET Core] Devops : VSTS, Git, Azure, Docker, Linux
05 - [ASP.NET Core] Devops : VSTS, Git, Azure, Docker, Linux
 
[XamarinDay] Développez de manière 100% native avec Xamarin
[XamarinDay] Développez de manière 100% native avec Xamarin[XamarinDay] Développez de manière 100% native avec Xamarin
[XamarinDay] Développez de manière 100% native avec Xamarin
 
Functional Reactive Programming
Functional Reactive ProgrammingFunctional Reactive Programming
Functional Reactive Programming
 
The algebra of library design
The algebra of library designThe algebra of library design
The algebra of library design
 
04 - [ASP.NET Core] Entity Framework Core
04 - [ASP.NET Core] Entity Framework Core 04 - [ASP.NET Core] Entity Framework Core
04 - [ASP.NET Core] Entity Framework Core
 
ASP.NET vNext Beta 3
ASP.NET vNext Beta 3ASP.NET vNext Beta 3
ASP.NET vNext Beta 3
 
asp.net mvc-course-introduction
 asp.net mvc-course-introduction asp.net mvc-course-introduction
asp.net mvc-course-introduction
 
[XamarinDay] Deep dive des produits Xamarin part 1
[XamarinDay] Deep dive des produits Xamarin part 1[XamarinDay] Deep dive des produits Xamarin part 1
[XamarinDay] Deep dive des produits Xamarin part 1
 
Functional Reactive Programming / Compositional Event Systems
Functional Reactive Programming / Compositional Event SystemsFunctional Reactive Programming / Compositional Event Systems
Functional Reactive Programming / Compositional Event Systems
 
What is Reactive programming?
What is Reactive programming?What is Reactive programming?
What is Reactive programming?
 
Athlon – UX trends for Fintech
Athlon – UX trends for FintechAthlon – UX trends for Fintech
Athlon – UX trends for Fintech
 
ASP.NET Core em Linux - Canal .NET Dev Week
ASP.NET Core em Linux - Canal .NET Dev WeekASP.NET Core em Linux - Canal .NET Dev Week
ASP.NET Core em Linux - Canal .NET Dev Week
 
Dial M for ECommerce (if you aren't, think Mobile for omni-channel. NOW)
Dial M for ECommerce (if you aren't, think Mobile for omni-channel. NOW)Dial M for ECommerce (if you aren't, think Mobile for omni-channel. NOW)
Dial M for ECommerce (if you aren't, think Mobile for omni-channel. NOW)
 
ASP.NET MVC Core
ASP.NET MVC CoreASP.NET MVC Core
ASP.NET MVC Core
 
Integration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid IntegrationIntegration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid Integration
 
Step-by-step into the world of Hybrid integration with Azure
Step-by-step into the world of Hybrid integration with AzureStep-by-step into the world of Hybrid integration with Azure
Step-by-step into the world of Hybrid integration with Azure
 
Silver Bullet: The One Trick Most Companies Looking to go Digital are Missing
Silver Bullet: The One Trick Most Companies Looking to go Digital are MissingSilver Bullet: The One Trick Most Companies Looking to go Digital are Missing
Silver Bullet: The One Trick Most Companies Looking to go Digital are Missing
 

Similaire à 02 - [ASP.NET Core] ASP.NET Core MVC

Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2
apratt72
 
Le Developpement Web Aspnet2 Vb2005
Le Developpement Web Aspnet2   Vb2005Le Developpement Web Aspnet2   Vb2005
Le Developpement Web Aspnet2 Vb2005
Gregory Renard
 
Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp Fr
Gregory Renard
 
Asp Au Service Des Mv Ps
Asp Au Service Des Mv PsAsp Au Service Des Mv Ps
Asp Au Service Des Mv Ps
Gregory Renard
 

Similaire à 02 - [ASP.NET Core] ASP.NET Core MVC (20)

ASP_NET_complet.pdf
ASP_NET_complet.pdfASP_NET_complet.pdf
ASP_NET_complet.pdf
 
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"
 
Chap 3 - ASP .Net.pptx
Chap 3 - ASP .Net.pptxChap 3 - ASP .Net.pptx
Chap 3 - ASP .Net.pptx
 
[TechDays 2012] : Quoi de neuf dans ASP.NET 4.5
[TechDays 2012] : Quoi de neuf dans ASP.NET 4.5[TechDays 2012] : Quoi de neuf dans ASP.NET 4.5
[TechDays 2012] : Quoi de neuf dans ASP.NET 4.5
 
Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5
 
Starter Kits
Starter KitsStarter Kits
Starter Kits
 
Formation gwt
Formation gwtFormation gwt
Formation gwt
 
TP GWT JDEV 2015
TP GWT JDEV 2015TP GWT JDEV 2015
TP GWT JDEV 2015
 
Framework .net overview
Framework .net overviewFramework .net overview
Framework .net overview
 
Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2Sybase Connect Atelier Power Builderv2
Sybase Connect Atelier Power Builderv2
 
Intellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsIntellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server Internals
 
Le Developpement Web Aspnet2 Vb2005
Le Developpement Web Aspnet2   Vb2005Le Developpement Web Aspnet2   Vb2005
Le Developpement Web Aspnet2 Vb2005
 
ASP.NET MVC 5 et Web API 2
ASP.NET MVC 5 et Web API 2ASP.NET MVC 5 et Web API 2
ASP.NET MVC 5 et Web API 2
 
Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp Fr
 
Asp Au Service Des Mv Ps
Asp Au Service Des Mv PsAsp Au Service Des Mv Ps
Asp Au Service Des Mv Ps
 
Parisweb - javascript server side - par où commencer ?
Parisweb - javascript server side - par où commencer ?Parisweb - javascript server side - par où commencer ?
Parisweb - javascript server side - par où commencer ?
 
Initiation à ASP.NET 4.0
Initiation à ASP.NET 4.0Initiation à ASP.NET 4.0
Initiation à ASP.NET 4.0
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
 
Alt.net spring.net
Alt.net spring.netAlt.net spring.net
Alt.net spring.net
 

Plus de Cellenza

Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
Cellenza
 
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin ![XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
Cellenza
 

Plus de Cellenza (20)

The PostBuildEvent : Retour sur la //Build 2017
The PostBuildEvent : Retour sur la //Build 2017The PostBuildEvent : Retour sur la //Build 2017
The PostBuildEvent : Retour sur la //Build 2017
 
DevCon 3 : Containérisation d’applications
DevCon 3 : Containérisation d’applicationsDevCon 3 : Containérisation d’applications
DevCon 3 : Containérisation d’applications
 
DevCon 3 : BOT Framework & Luis
DevCon 3 : BOT Framework & LuisDevCon 3 : BOT Framework & Luis
DevCon 3 : BOT Framework & Luis
 
DevCon 3 : Azure API Management
DevCon 3 : Azure API ManagementDevCon 3 : Azure API Management
DevCon 3 : Azure API Management
 
Integration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration TrendsIntegration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration Trends
 
Integration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic AppsIntegration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic Apps
 
Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016
 
Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
Integration Summit 16 - Azure Logic App, bonnes pratiques et industrialisatio...
 
Integration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic AppIntegration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic App
 
Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management
 
Integration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power appsIntegration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power apps
 
[XamarinDay] Xamarin History - From 0 to microsoft acquisition !
[XamarinDay] Xamarin History - From 0 to microsoft acquisition ![XamarinDay] Xamarin History - From 0 to microsoft acquisition !
[XamarinDay] Xamarin History - From 0 to microsoft acquisition !
 
[XamarinDay] Deep dive des produits Xamarin part 2
[XamarinDay] Deep dive des produits Xamarin part 2[XamarinDay] Deep dive des produits Xamarin part 2
[XamarinDay] Deep dive des produits Xamarin part 2
 
[XamarinDay] Xamarin pour votre entreprise
[XamarinDay] Xamarin pour votre entreprise [XamarinDay] Xamarin pour votre entreprise
[XamarinDay] Xamarin pour votre entreprise
 
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin ![XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
[XamarinDay] Cellenza - Votre partenaire Mobilité et Xamarin !
 
[XamarinDay] Retours sur Evolve 2016
[XamarinDay] Retours sur Evolve 2016[XamarinDay] Retours sur Evolve 2016
[XamarinDay] Retours sur Evolve 2016
 
[XamarinDay] Xamarin et le Cloud, better together !
[XamarinDay] Xamarin et le Cloud, better together ! [XamarinDay] Xamarin et le Cloud, better together !
[XamarinDay] Xamarin et le Cloud, better together !
 
[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet Xamarin[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet Xamarin
 
[29/06] Paris Container Day - Microservices avec Azure
[29/06] Paris Container Day - Microservices avec Azure[29/06] Paris Container Day - Microservices avec Azure
[29/06] Paris Container Day - Microservices avec Azure
 
DevCon Programmez! - Miriot
DevCon Programmez! - Miriot DevCon Programmez! - Miriot
DevCon Programmez! - Miriot
 

02 - [ASP.NET Core] ASP.NET Core MVC

  • 1. ASP.NET Core MVC Les nouveautés Microsoft ASP.NET core MVC
  • 2. Speakers  Georges DAMIEN  Consultant .NET/Web @ Cellenza  Microsoft MVP, MCSD, MCP  Emilien Bassez  Consultant .NET/Web @ Cellenza  Jean Dumas de Rauly  Consultant .NET @ Cellenza
  • 3. Prérequis  Visual Studio 2015 Update 3  Visual Studio Code avec l’extension C#
  • 5. Historique – Pour rappel • Pages asp Asp Classic • Page aspx • viewState Asp.net Web Forms • Mvc version 1-2- 3-4-5 • Projets mvc et web API séparés Asp.net MVC • Mvc et web API et SignalR unifiés. Asp.net core
  • 6. Le model MVC  MVC c’est avant tout un patron de conception qu’on retrouve essentiellement dans les couches de présentation applicative.  Il a été conçu pour la première fois dans les années 78-79.  Il aide à mieux structurer le code en séparant les notions de présentation pure à la notion de traitement de données.  MVC pour Model-View-Controller.
  • 7. Asp.Net Core ?  C’est un nouveau framework refait de 0 avec pour maîtres mots :  Cross-platform (Windows, Mac, Linux)  IoT apps & Mobile backends  Orienté Cloud (mais également On-Premise)  Applications moderns (Web Apps)  Open source (le code est sur GitHub)  https://github.com/aspnet/home
  • 8. Asp.Net Core : avantages  Web UI et Web APIs unifiés  Intégration simplifiée des frameworks Front  Cloud ready configuration  Injection de dépendance intégrée en natif  Pipeline Http leger et modulaire  Hébergement sous IIS ou “selfHost”  Gestion avancée du versioning applicative  Cross plateforme  Open source
  • 9. Asp.Net Core : Incovénients à date  Framework Core pas complètement prêt  Packages pas à jour  Tooling incomplet
  • 10. ASP.NET Core – vue macro ASP.NET Core 1 Framework unifié pour MVC, Web API et SignalR .NET Framework 4.6 Framework .net compatible avec les anciennes librairies .NET Core Runtime allégé et optimisé pour les serveurs et le cloud
  • 14. Ce qui est (vraiment) nouveau Séparation complète avec IIS Prise en charge des requêtes entrantes plus clair
  • 16. Kestrel  Léger  Performant  Multiplateforme  Manque de fonctionnalité
  • 17. WebListener  Plus de fonctionnalités que Kestrel  Moins performant  Uniquement sur Windows
  • 18. Et IIS ???  N’est plus qu’un reverse proxy … mais bien intégré
  • 21. Arbre du pipeline  Map : branche par chemin  MapWhen : branche par predicat  Run : feuille
  • 23. Quand l’utiliser ?  Logging  Authentification  Gestion d’erreur  Compression des réponses http  …
  • 25. Injection de dépendances  AddTransient : 1 instance par besoin  AddSingleton : 1 instance pour l’application  AddScoped : 1 instance par requête
  • 26. Pas besoin de réinventer la roue UseMvc UseClaimsTransformation UseRewriter UseMvc UseClaimsTransformation UseRewriter
  • 27. ASP.NET Core MVC : Front End Nouveautés Front MVC
  • 28. Web Root (wwwroot)  Il s’agit d’un repertoire dédié par convention aux fichiers statiques de l’application web.  Le nom du repertoire est communement nommé : webroot  On y trouve par exemple  Les fichiers JS  Les fichiers CSS  Les images utilisées par le sites  Les fonts Web
  • 30. Bundling & minifying : commandes  Commandes dotnet bundle dotnet bundle clean dotnet bundle watch
  • 31. Bower
  • 32. _ViewImports.cshtml • Référence les namespaces dans les vues • Injecte des services dans les vues • Ajouter des TagHelpers dans les vues
  • 33. Tag Helpers  Génération d’html coté serveur comme on le faisait avec les HtmlHelpers.  Ne pas dénaturer le html de vos vues en introduisant moins de C# dans vos fichier cshtml. @Html.ActionLink("Register", "Register", "Account") <a asp-controller="Account" asp-action="Register">Register</a>
  • 34. <modal id="modalSearchEngine" title="Moteur de recherche"> <modal-body> <h4>Coming soon</h4> </modal-body> <modal-footer> <input type="button" value="Valider" /> </modal-footer> </modal> Tag Helpers <div class="modal fade" tabindex="-1" role="dialog"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-body"> <h4>Coming soon</h4> </div> <div class="modal-footer"> <input type="button" value="Valider" /> </div> </div> </div> </div>
  • 35. ViewComponents  Remplace ChildAction  A mis chemin entre le Controller / PartialView
  • 36. Liens  https://www.asp.net/core  https://docs.microsoft.com/fr-fr/aspnet/core/  https://docs.microsoft.com/en-us/aspnet/core/  https://docs.microsoft.com/en- us/aspnet/core/fundamentals/dependency-injection

Notes de l'éditeur

  1. Outil simple, seulement 3 commandes