Applications Web MVC avec ASP.NET 7
Modifié le: 2022-11-07
Auditoire
Dévelopeurs
Durée
5 jours
Prérequis
Programmation avec le langage C# (Bases)
Description
ASP.NET 7 est la nouvelle version recommandée pour le développement d'applications web côté serveur. Une architecture recommandée est MVC, un patron de développement basé sur un découpage composé de Modèles, de Vues et de Contrôleurs.
Venez bâtir plusieurs applications web, qui vous permettront de comprendre les meilleures pratiques et usages.
Plan de cours
Présentation de .NET 7 et ASP.NET Core
- Évolution: de .NET Framework à .NET (en passant par .NET core)
- Comparaison des technologies
- ASP.NET
- Pages Razor
- Pages Blazor (server)
- Pages Blazor (Web Assembly)
- MVC
- Web API
- SPA React
Configurer les Middlewares et les Services
- Démarrer une application ASP.NET
- Utiliser Kestrel vs. IISExpress
- Comparer entre:
- nouveau modèle d’hébergement minimal
- modèle d'hébergement classique
- Gerér la configuration
- appSettings.json
- Environnement: Production vs. Development
- Secret Manager
- Variables d'environnement
- Configuration via Ligne de commande
- Configurer les Middlewares
- Middlewares importants (statique, etc.)
- Configurer les Services
- Injection de dépendance
Contrôleurs
- Créer Controllers et Actions
- Configurer les Routes
- Utiliser les "Actions Filters"
Vues
- Syntaxe Razor
- Html Helpers et Tag Helpers
- Réutiliser les vues
- Vues Partielles
- Vues Composantes
Modèles
- Créer des modèles
- Travailler avec des Formulaires
- Validation des données
Utiliser Entity Framework
- Fondements d'Entity Framework
- Lire et écrire des données
- Se connecter sur Sql Server et SQLite
Layout, CSS, Javascript, Sass, Bootstrap, React
- Appliquer le layout et le positionnement des éléments
- Utiliser Css
- Ajouter le Javascript
- Compiler Sass
- Générer un bootstrap personalisé
- Compiler un SPA React
Sécurité
- Identité (authentication)
- Autorisation (authorization)
- Protection des attaques
- Cross-Site Request Forgery
- HTTPS
- HSTS
Gestion du caching, de l'état et de la journalisation
- Créer un stratégie de caching
- Gérer l'état applicatif (State)
- Ajuster les options de journalisation (logging)
Tests unitaires et Déploiement
- Ajouter des Test
- Utiliser des classes Fakes et des Mocks.
- Déployer notre application
Chapitres additionnels optionnels:
En formation privée, on peut ajouter ou modifier des modules.
Génération de modèles, de vues, de contrôleurs
- Outils de Génération (Scaffolding tools)
- modification des vues et classes partielles
- personalisation des templates
Notifications de données avec SignalR
- Création d'un service SignalR
- Abonner un client à SignalR
- Recevoir et afficher une notification
Développement .NET avec des containers
- Installation de Docker
- Utilisation de .NET avec containers
- Configurations spécifiques sur les containers
- Déployer nos containers sur Azure
Communication ouverte avec des services "Web API"
- Concevoir nos services REST
- Configurer OpenAPI et Swagger
- Créer des services
- Appeler nos services
Communication efficace avec gRPC
- Faire des appels efficients avec gRPC
- Définir nos services avec "Interface Definition Language"
- Appeler des services gRPC avec un client.
Application Web avec des pages Razor
- Se simplifier la vie avec "Razor Pages"
- Filtres Razor
- Routage et conventions
Applications clients avec Blazor
- Bâtir des applications interactives avec Blazor
- Créer des composants Blazor
- Routage et navigation
- Convertir une ancienne application "ASP.NET Web Forms" en Blazor