Visual Studio .Net - Développer des applications Web ASP.NET Core MVC en C# sous Visual Studio 2017

Référence : VSN-ASP-MVC

Dans cette formation, vous apprendrez à développer des applications Web dynamiques côté serveur avec le framework ASP.NET Core MVC et le langage C# sous Visual Studio 2017.

Infos pratiques

  • Durée : 5 jours soit 35 heures
  • Population visée : Ouvrier – Employé – Employé qualifié – Cadre – Cadre supérieur
  • Public concerné : Développeurs, analystes programmeurs, chefs de projets.

Programme

Objectifs pédagogiques

A l’issue de cette formation, l’apprenant sera capable de :

  • Concevoir l'architecture et la mise en œuvre d'une application Web qui correspondent à un ensemble d'exigences fonctionnelles et de l'interface utilisateur ;
  • Créer des modèles MVC et écrire du code qui met en œuvre la logique métier (méthodes, propriétés, événements) ;
  • Ajouter des contrôleurs à une application MVC pour gérer les interactions utilisateurs, mettre à jour les modèles, sélectionner et retourner les vues ;
  • Créer des vues dans une application MVC qui affiche et met à jour des données et interagit avec les modèles et les contrôleurs ;
  • Exécuter des tests unitaires et des outils de débogage sur une application Web dans Visual Studio 2017 et configurer une application pour identifier les problèmes ;
  • Développer une application Web qui utilise le moteur de routage d'ASP.NET pour réécrire les URL et présenter une hiérarchie de navigation logique pour les utilisateurs ;
  • Utiliser les mises à jour de pages partielles pour réduire la bande passante utilisée par une application et accélérer les réponses aux demandes des utilisateurs ;
  • Construire une application MVC qui résiste aux attaques malveillantes et qui persiste les informations des utilisateurs et leurs préférences ;
  • Décrire ce qu'est une API Web et pourquoi les développeurs peuvent ajouter une API Web à une application ;
  • Décrire comment empaqueter et déployer une application Web ASP.NET MVC à partir d'un ordinateur de développement vers un serveur Web pour la mise en production.

Pré-requis

  • Idéalement, avoir suivi les formations :
    • " Les fondamentaux du développement .NET avec le langage C# 7 sous Visual Studio 2017 ",
    • " Accéder aux données avec Entity Framework ",
    • " Développer des applications HTML5 Responsives avec JavaScript et CSS3 ",
    • ou posséder les connaissances et compétences équivalentes.

Objectifs opérationnels et contenu de la formation

Présentation des architectures Web

  • Les architectures n-tiers
  • Le fonctionnement du Web
  • Les différentes technologies pour la mise en œuvre d'un site Web

Le modèle MVC

  • La présentation du modèle
  • Les intérêts et les objectifs du pattern MVC
  • Les évolutions et les différentes versions d'ASP.NET MVC
  • La création d'une application ASP.NET MVC

Les nouveautés du framework ASP.NET Core MVC

  • Concept de middleware
  • Création et intégration d'un middleware
  • L'injection de dépendance
  • Mise en œuvre par " constructor injection "
  • Travaux pratiques : Configurer les middlewares pour votre application

Les contrôleurs MVC

  • La création d'un contrôleur
  • La structure d'une application MVC
  • La communication entre le contrôleur et les vues
  • L'échange de données via le viewbag et le viewdata
  • La personnalisation de la fabrique de contrôleur
  • Les filtres
  • Travaux pratiques : Conception d'un contrôleur et d'une vue qui vont présenter les informations de l'application

Le routage MVC

  • La présentation du concept de routage
  • La création de routes
  • Les contraintes sur les routes
  • Le routage via les annotations
  • Travaux pratiques : Conception d'une route spécifique pour la fonctionnalité de présentation de l'application

Mise en œuvre du modèle

  • Rôle et responsabilité du modèle
  • L'utilisation d'un modèle dans une vue
  • La gestion de formulaire
  • Travaux pratiques : Conception d'un catalogue de livres avec des méthodes de recherche selon différents critères

Gestion des vues

  • La présentation du moteur de rendu Razor
  • La syntaxe de base de Razor
  • Les Tag Helpers
  • La création de Tag Helper
  • Les vues partielles
  • Les View Component
  • Gestion de l'internationalisation
  • Les modèles de présentation (layout)
  • Travaux pratiques :
    • Conception des vues qui vont présenter le résultat des différentes recherches au sein du catalogue
    • Conception d'une vue qui va permettre d'ajouter un livre dans le catalogue
    • Créer un Helper qui permet de gérer la liste des catégories de livres

Test et débogage d'applications Web ASP.NET Core MVC

  • Les tests unitaires de composants MVC
  • La mise en œuvre d'une stratégie de gestion des erreurs
  • Travaux pratiques :
    • Créer des tests unitaires permettant de valider le bon fonctionnement des méthodes de recherche au sein du catalogue
    • Mettre en place la gestion des erreurs à l'aide des différentes techniques proposées par le framework

Gestion de la couche d'accès aux données avec Entity Framework Core

  • Rappels sur Entity Framework Core
    • Architecture d'Entity Framework
    • Configuration d'Entity Framework Core
    • La mise en œuvre en Code First
    • La création et la gestion de contexte
    • Le requêtage avec Linq to Entities
  • Travaux pratiques :
    • Remplacer le catalogue de livres en mémoire par un stockage en base de données
    • Réaliser un composant DAO qui va faire les requêtes en base à l'aide de LINQ to Entities

Application de styles aux applications Web ASP.NET Core MVC

  • La création et l'utilisation des modèles de vues
  • La gestion des sections
  • L'application des CSS à une application MVC
  • Les bundles
  • Travaux pratiques : Définir des modèles de présentation et les appliquer aux différentes vues

Création de pages réactives dans les applications Web ASP.NET Core MVC

  • Les vues partielles
  • L'utilisation et la mise en œuvre d'AJAX
  • Travaux pratiques : Optimiser les différentes pages de l'application en intégrant une couche AJAX

Le contrôle de validation avec JavaScript et jQuery

  • La validation par annotation
  • Les différentes règles de validation
  • La validation asynchrone
  • La création de règles
  • Travaux pratiques : Ajout de la validation des champs de formulaire avec jQuery

La gestion des états

  • La présentation du concept de session
  • Les différentes approches du suivi de session
  • La gestion du suivi de session
  • Les évènements de session
  • Les objets Cache et Application
  • Travaux pratiques : Intégrer la gestion d'un panier pour stocker les différents éléments sélectionnés

Déploiement des applications Web ASP.NET Core MVC

  • Présentation de la technique de déploiement
  • Conception et paramétrages d'un Web Package
  • Installation d'un Web Package sur le serveur Web IIS
  • Travaux pratiques : Déployer l'application sur un serveur Web IIS

Contrôle de l'accès aux applications Web ASP.NET Core MVC

  • La gestion de la sécurité
  • La présentation d'ASP.NET Identity
  • La notion d'utilisateur et de rôle
  • La personnalisation d'utilisateur
  • Présentation d'OWIN
  • La mise en œuvre et le paramétrage d'OWIN
  • La gestion des autorisations
  • Travaux pratiques : Sécuriser la page d'ajout de livre qui ne doit être accessible que par les administrateurs du site

Le développement de Services Web REST avec ASP.NET Web API 2

  • La présentation et historique d'ASP.NET Web API
  • L'exposition de services
  • Le routage
  • Le classe HttpResponseMessage
  • Travaux pratiques : Réaliser un Service REST qui va effectuer une recherche de livre en fonction de différents critères

Méthodes et moyens

  • Explications théoriques suivies de pratiques guidées puis mises en autonomie
  • 1 vidéoprojecteur par salle
  • 1 ordinateur par stagiaire

Méthodes d’évaluation des acquis

  • Exercices de synthèse et d’évaluation
  • Evaluation de fin de stage

Profil formateur

Nos formateurs sont certifiés à l’issue d’un parcours organisé par nos soins. Ils bénéficient d’un suivi de compétences aussi bien au niveau technique que pédagogique.

Support stagiaire

  • Support papier ou électronique (dématérialisé)
  • Les exercices d’accompagnement peuvent être récupérés sur clef USB