Vision d'ensemble des technologies utilisés
- Les particularités de .NET Core.
- Les Web Api et la partie Framework MVC.
- La sécurité de son navigateur web.
- Le Design Pattern : MVVM.
- Web assembly, Websockets, SignalR.
Travaux pratiques
Création d'une première application Blazor
L'architecture de Blazor
- Blazor, la convergence de Razor adapté au browser.
- Blazor Server côté serveur pour la compatibilité.
- Utilisation des web sockets SignalR pour la communication.
- Blazor Web assembly côté client.
- Techniques de partage de code entre serveur et client.
- Interaction avec le DOM, Javascript Interop et sécurité du bac à sable.
Travaux pratiques
Mise en place du partage de code et intégration de JavaScript pour manipuler le DOM d'une page Web.
Les bases de Razor
- Structure d'un projet Razor.
- Routage et navigation pour atteindre les composants.
- Différentes configurations selon l'environnement d'exécution.
- Container d'injection de dépendances de Razor.
- Composants Blazor Net 5. Virtualisation pour les performances.
- Razor class Libraries pour le partage de code d'IHM.
- Hébergement et déploiement des applications Razor.
Travaux pratiques
Création d'un premier composant Blazor avec gestion des paramètres et des méthodes.
La communication avec le serveur
- Blazor serveur : exécution côté serveur.
- A travers HTTP REST API.
- Sécurité de CORS.
- Utilisation de SignalR pour une communication Websockets.
Travaux pratiques
Consommation de Webservice REST et mise en place de Web sockets avec SignalR.
Les bonnes pratiques de Razor
- Formulaires, bindings et validation.
- Globalisation / Localisation.
- Gestion de l'état inter session.
- Layouts pour factoriser la structure des pages.
- Composants à base de templates.
- Virtualisation des composants pour de bonnes performances.
Travaux pratiques
Création d'un formulaire avec validation des champs
La sécurité avec Blazor
- Sécurité Blazor Server avec AuthorizeView.
- Sécurité Blazor Client avec AuthenticationStateProvider.
- Fourniture d'une identité OpenId et WebAssembly Authentication Library.
Travaux pratiques
Mise en place de la partie sécuritaire coté serveur avec AuthorizeView