Développeurs .Net (C# ou VB.Net)
Maîtrise de l'objet (C# ou VB.Net), connaissances en HTML/CSS/JS
Maîtriser le développement d'applications ASP.Net MVC Core avec le moteur de vue Razor et une couche d'accès aux données pilotée par Entity Framework
MVC: pattern, usage, inconvénientsRôles des trois entités et interactions
Création d'applications web.Net.NET Core vs.NET FrameworkASP.Net MVC: présentation, versions, technologies utiliséesStructure d'un projet ASP.Net MVC, choix du moteur de vueConfiguration globale: dépendances, bundles, filtres, classe de configuration globaleRessources disponibles (documentation)
Atelier: Création d'un projet ASP.NET MVC Core, détail de la structure
Contrôleur ASP.NET: implémentation, nommageRoute: configuration par défaut, syntaxePassage et récupération des paramètres dans les actions du contrôleurMapping des paramètres et modification du routage dans le RouteConfigChoix du type de résultat de l'action: ActionResult, FileContentResult,...Gestion du download
Atelier: Création de contrôleurs, routage et récupération de paramètres
Gestion des redirections depuis le contrôleur: vers une vue, vers une action, vers un fluxMoteur de vue Razor: présentation, syntaxeTemplating de vues: _ViewStart (template par défaut), _Layout personnaliséAccès aux bundles: styles, scriptsCréation de vues: association à un template, structure de la pageBootstrap: grille responsive design, principales classes, composants disponiblesGestion des CSS de la vueCréation de classes modèles, envoi dans le contrôleur et récupération dans la vueCréation de formulaires: contrôles de base, restoration de valeurs après PostbackValidation des entrées: gestion dans le modèle et affichage des erreursGénération de vues associées à un modèle avec l'éditeurInternationalisation de la vueGestion des sessions HTTP, accès dans la vueManipulation de variables globalesCréation et récupération de cookiesGestion de l'uploadGestion de requêtes asynchrones AJAXDebug de vues: helpers (ServerInfo, ObjectInfo)
Atelier: Implémentation d'un CRUD complet MVC, validation d'entrées et imports/exports
Gestion de l'authentification: méthodes disponibles, critères de choixImplémentation d'une stratégie d'authentification, gestion des rôlesFiltres d'authentificationSécurité des formulaires contre les injectionsAntiForgeryToken: intérêt, mise en place
Atelier: Implémentation d'une stratégie d'authentification, sécuriser des formulaires contre les injections
Architecture et technologies d'accès aux donnéesMapping relationnel objetPrésentation du framework, outilsEntity framework vs autres ORM (NHibernate)Entity Data Model vs Code FirstContexte et chaine de connexion
Atelier: Mise en place d'Entity Framework dans un projet sous Visual Studio
Définition de la classe du contexte (DbContext), cycle de vieGestion des logsDéfinition des classes du modèle et ajout dans le contexteInitialisateurs de BddConventions disponibles, ajouts, gestion des datetime2Mapping des tables: Attributs et API FluentGestion des clés primaires: simples, composéesGestion de la concurrence: Concurrency Check, TimestampMapping des colonnes calculéesRelations: OneToMany/ManyToOne, OneToOne, ManyToManyStratégies de mapping de l'héritage: TPH, TPC, TPSGénération d'actions CRUD dans un controleurGestion de la sauvegarde en mode asynchrone
Atelier: Création, modification d'un modèle de données complet
Migrations: définition, intérêtsActivation des migrations, migration initialAjout d'une migration et modification du code: requêtes SQLApplication d'une migration: mise à jour ou regression de versionMise en production à une migration spécifiée
Atelier: Création de manipulation de Bdd avec des migrations
Comprendre l'exécution des requêtesGestion des connexionsMaîtrise des transactionsPassage d'une connexion existanteMéthodes disponibles du DbContext: Création, mise à jour et suppressionGestion des chargements des associations: Lazy vs EagerGénération de procédures stockées pour les entités du modèle et utilisationOptimiser le cache du contexte, erreurs à éviter
Atelier: Mise à jour des données et modification du modèle
Panorama des méthodes de récupération de données disponiblesUtilisation de LINQ to Entities, erreurs à éviterRequêtes avec Entity SQLProcédures stockées et gestion des résultats multiplesInterrogations et modifications de données en utilisant les commandes ADO.NetUtilisation des DataSetsUtilisation de LINQ to SQLGestion des performances
Atelier: Ecriture de multiples requêtes et traitement des résultats - gestion de la pagination / création des vues
Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.
Contrôle continu
Attestation de fin de stage mentionnant le résultat des acquis