• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
alphorm.com - Formation Développez des applications Web avec ASP.NET MVC 4 _(70-486_)
 

alphorm.com - Formation Développez des applications Web avec ASP.NET MVC 4 _(70-486_)

on

  • 1,290 views

 

Statistics

Views

Total Views
1,290
Views on SlideShare
1,249
Embed Views
41

Actions

Likes
1
Downloads
0
Comments
0

1 Embed 41

http://www.scoop.it 41

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    alphorm.com - Formation Développez des applications Web avec ASP.NET MVC 4 _(70-486_) alphorm.com - Formation Développez des applications Web avec ASP.NET MVC 4 _(70-486_) Presentation Transcript

    • Présentation de la formation Développez des applications Web avec ASP.NET MVC 4 (70-486) Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.bouchoucha@wuits.fr alphorm.com™©
    • Plan • Présentation de votre formateur • Présentation de la formation • Le plan de la formation • Outils nécessaires • Liens utiles & références • La certification Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Votre formateur • Djamel BOUCHOUCHA • djamel.bouchoucha@wuits.fr • Consultant .NET et formateur • Compétences : Web : ASP.NET, PHP, HTML5, CSS3, JavaScript, Web Service, WCF, RestFul Autres: C#, XAML, WPF, JAVA, C++, C, SQL, Cloud (Azure), iOS, Android, WP • Références : Profil Linkedin : fr.linkedin.com/pub/djamel-bouchoucha/57/210/572/ Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Présentation de la formation • Objectif principal : Préparation à la certification 70-486 • Prérequis : Avoir une première expérience dans le développement d’application ASP.NET Connaissance du Framework .NET et du langage C# Connaissances des langages de base du Web (HTML, CSS et JavaScript) • Ce que vous saurez faire à la fin de cette formation : Construire une application ASP.NET MVC complète Déployer votre application sur plusieurs supports dont le cloud Tester votre application Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Le plan de la formation Module 1 : Introduction à ASP.NET MVC 4 Module 2 : Conception d'application Web ASP.NET MVC 4 Module 3 : Développement de Modèles ASP.NET MVC 4 Module 4 : Développement de Contrôleurs ASP.NET MVC 4 Module 5 : Développement de Vues ASP.NET MVC 4 Module 6 : Tests et débogage d'application Web ASP.NET MVC 4 Module 7 : Structurer des applications Web ASP.NET MVC 4 Module 8 : Appliquer des styles aux applications Web ASP.NET MVC 4 Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Le plan de la formation Module 9 : Concevoir des pages réactives dans les applications Web ASP.NET MVC 4 Module 10 : Utilisation de JavaScript et de jQuery pour des applications Web réactives MVC 4 Module 11 : Gestion des droits d'accès aux applications Web ASP.NET MVC 4 Module 12 : Concevoir des applications Web robustes ASP.NET MVC 4 Module 13 : Utilisation des Web Services Windows Azure dans les applications Web ASP.NET MVC 4 Module 14 : Implémentation d'API Web dans les applications Web ASP.NET MVC 4 Module 15 : Gestion des requêtes dans les applications Web ASP.NET MVC 4 Module 16 : Déploiement d'applications Web ASP.NET MVC 4 Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Outils nécessaires • Un Système d’exploitation Microsoft Windows 7 SP1 Windows 8 et 8.1 Windows Server 2008 R2 SP1 (x64 uniquement) Windows Server 2012 (x64 uniquement) • Le framework .NET 4.5 • Visual Studio 2012 • Optionnel : un compte Windows Azure Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Liens utilies & références • Microsoft ASP.NET MVC http://www.asp.net/mvc • Microsoft .NET: www.microsoft.com/net • MSDN (Microsoft Developer Network) msdn.microsoft.com • Rubrique ASP.NET de developpez.com • dotnet.developpez.com/asp.net/ • Communauté d’aide au développement • borntolearn.mslearn.net • stackoverflow.com • www.siteduzero.com • Microsoft Learning Center www.microsoft.com/learning • Communauté Microsoft Learning www.microsoft.com/learning/en/us/community.aspx • Blog de ScottGu’s http://weblogs.asp.net/scottgu/ • Blog de Scott Hanselman • Livres recommandés • Liste de eBook gratuit proposés par Microsoft • Pro ASP.NET MVC 4 (Professional Apress), Fourth Edition de Adam Freeman • Professional ASP.NET MVC 4 de Scott Hanselman • http://www.hanselman.com Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La certification • Développez des applications Web avec ASP.NET MVC 4 (70-486) http://www.microsoft.com/learning/en-us/exam-70-486.aspx • MCSD: Web Applications http://www.microsoft.com/learning/en-us/mcsd-web-appscertification.aspx • Second Shot http://bsf01.com/Microsoft_Vouchers/SecondShot.aspx • Prometric http://www.register.prometric.com/ Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Bonne formation ☺ Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Introduction à ASP.NET MVC 4 Introduction aux technologies Web de Microsoft Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Présentation des principaux outils web Microsoft • Côté serveur • Côté client • Windows Azure Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Présentation des différents outils Web MS • Développement : Visual Studio WebMatrix MonoDevelop • Hosting : Internet Information Services Windows Azure • Exécution côté serveur : ASP.NET • Exécution côté client : JavaScript, JQuery .. Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Côté serveur • IIS : Internet Information Services Serveur HTTP (comparable à Apache) Rôle dans Windows Serveur Permet d’exécuter des applications : ASP.NET, ASP, PHP… • Windows Azure Cloud Microsoft Sites Web, Services, Base de données … • Le framework .NET Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Côté client • Les standards du web : HTML, CSS et JavaScript • Les templates ASP.NET, mettent en avant l’utilisation de : JavaScript, JQuery HTML5 et CSS3 La compatibilité Multi-navigateur L’adaptation des sites sur Mobile • Silverlight Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • Les outils de développement • IIS • Windows Azure • L’utilisation des standards Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Introduction à ASP.NET MVC 4 Introduction à ASP.NET 4.5 Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Applications web : Web pages Web Forms MVC Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Web Pages • WebMatrix, Visual Studio, Bloc-notes.. • Uniquement avec le moteur de vue Razor • Le code HTML et le code métier dans le même fichier (fichier .cshtml) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Web Forms • Visual Studio, MonoDevelop • Moteur de vue ASPX • Création d’UI à l’aide des boites à outils • Binding des contrôles • Le code HTML et le code métier sont dans deux fichiers séparés (.aspx et aspx.cs) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • MVC • Visual Studio, MonoDevelop • Moteur de vue ASPX ou Razor • Pas de boites à outils, uniquement les contrôles HTML standards • Séparation en 3 couches • La couche vue génère les interfaces utilisateurs Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • Applications web : Web pages Web Forms MVC Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Introduction à ASP.NET MVC 4 Introduction à ASP.NET MVC 4 Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • MVC : Models, Views, et Controllers • MVC dans le Framework .NET Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • MVC : Models, Views, and Controllers Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • MVC dans le Framework .NET Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • MVC : Models, Views, et Controllers • MVC dans le Framework .NET Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Conception d'application Web ASP.NET MVC 4 Préparer les phases de conception Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • La gestion de projet • Les données • La couche service Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La gestion de projet • Méthodes : Agile Extreme Programming (XP) Test Driven Development (TDD - développement piloté par les tests) • Les besoins: Définir les fonctions en amont Utilisation d’UML (notamment les USE CASE) • Exécution côté serveur : ASP.NET • Exécution côté client : JavaScript, JQuery .. Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Les données • Choix du serveur de base de données : SQL SERVER Oracle MySql • Object-relational mapping (ORM) Entity Framework Nhibernate Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La couche service • Choix du fournisseur de service : Web Services WCF RestFul (WebApi) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La nécessité de : Choisir une méthode de gestion de projet Choisir le serveur de base de données et un ORM Choisir son fournisseur de service Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Conception d'application Web ASP.NET MVC 4 Conception des Modèles, Contrôleurs et Vues Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • La conception de la couche Modèle • La conception de la couche Contrôleur • La conception de la couche Vue Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La conception de la couche Modèle • Les entités : Simple classe C# Configurer à l’aide d’annotation • La persistance : ADO.NET ORM (Entity Framework, NHibernate…) • Entity Framework : Génération automatique des vues et des entités Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La conception de la couche Contrôleur • Une classe qui hérite de « Controller » • Qu’est ce qu’une Action ? • POST et GET • Gestion des vues • Sécurité Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • La conception de la couche Vue • Deux moteurs de rendues : Razor ASPX • Plusieurs types de vues : Complète Template Partiel Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La conception des couches MVC • Entity Framework • La génération automatique des vues Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Développement de Modèles ASP.NET MVC 4 Création des modèles MVC Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Création des modèles • Liaison de données (Model Binder) • Utilisation des annotations pour l’affichage et la validation des données • Créer son propre système de validation des données Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Création des modèles Comment ToDo ToDoID : int Title : string UserName : string Description : string Etat : boolean CreatedDate : object UpdatedDate : object 1 0..* CommentID : int UserName : string Subject : string Body : string CreatedDate : object UpdatedDate : object public class ToDo { public int ToDoID { get; set; } public string Title { get; set; } public string UserName { get; set; } public string Description { get; set; } public bool Etat { get; set; } public class Comment { public int CommentID { get; set; } public string UserName { get; set; } public string Subject { get; set; } public string Body { get; set; } public DateTime CreatedDate { get; set; } public DateTime UpdatedDate { get; set; } } public DateTime CreatedDate { get; set; } public DateTime UpdatedDate { get; set; } public virtual ICollection<Comment> Comments { get; set; } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Liaison de données (Model Binder) Sans le Model Binder MVC Avec le Model Binder MVC public string Index() public ActionResult Index(ToDo todo) { { var todo= new ToDo() { … Name = Request["Title"].ToString(), Description = Request[« Description"].ToString(), ToDoId = Int32.Parse(Request["ToDoId"]) }; … public class HomeCustomBinder : IModelBinder { public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { HttpRequestBase request = controllerContext.HttpContext.Request; • DefaultModelBinder : Binder par défaut • IModelBinder : Binder personnalisé Développez des applications Web avec ASP.NET MVC 4 (70-486) string title = request.Form.Get("Title"); string desc= request.Form.Get("Description"); return new HomePageModels { Title = title, Description = desc }; alphorm.com™©
    • Utilisation des annotations pour l’affichage et la validation des données public class ToDo public class Person { public int PersonID { get; set; } { [Required(ErrorMessage="Veuillez saisir un nom.")] public string Name { get; set; } public int ToDoID { get; set; } [Range(0, 400)] public int Height { get; set; } [DisplayName("Titre de la ToDo :")] public string Title { get; set; } [Required] [RegularExpression(".+@.+..+")] public string EmailAddress { get; set; } [DataType(DataType.MultilineText)] public string Description { get; set; } [DataType(DataType.DateTime)] } [DisplayName("Created Date")] [DisplayFormat(DataFormatString = "{0:yyyy/MM/dd}", ApplyFormatInEditMode = true)] public DateTime CreatedDate { get; set; } public string UserName { get; set; } public virtual ICollection<Comment> Comments { get; set; } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Créer son propre système de validation des données [AttributeUsage(AttributeTargets.Field)] public class LargerThanValidationAttribute : ValidationAttribute { public int MinimumValue { get; set; } public LargerThanValidationAttribute(int minimum) { MinimumValue = minimum; } public override Boolean IsValid(Object value) { var valueToCompare = (int)value; if (valueToCompare > MinimumValue) { return true; } else { return false; } } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La création de modèle à l’aides annotations • Le binding du model avec le contrôleur • La possibilité de créer des annotations Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Développement de Modèles ASP.NET MVC 4 Travailler avec les données Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Connexion à une base de données • Entity Framework • Définir un context pour Entity Framework • Utiliser LINQ to Entities • Démo Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Connexion à une base de données • Pour configurer l’accès à une base de données il y a deux étapes : Ajouter la DLL System.Data au projet Ajouter la chaine de connexion au fichier web.conf <connectionStrings> <add name="ToDoDB" connectionString="Data Source=.SQLEXPRESS;Initial Catalog=DoToDB;Integrated Security=SSPI" providerName="System.Data.SqlClient"/> </connectionStrings> Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Entity Framework • Trois configurations possibles pour EF Database First Model First Code First • Pour Model First et Code First il est possible de définir des données chargées par défaut lors de la première initialisation (en surchargeant la méthode Seed) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Définir un context pour Entity Framework • Le contexte EF est juste une classe qui détermine les entités manipulés • Il suffit de créer une classe qui hérite de DbContext public class ToDoDB : DbContext { public DbSet<ToDo> ToDos { get; set; } public DbSet<Comment> Comments { get; set; } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Utiliser LINQ to Entities • LINQ to Entities est une version de LINQ qui fonctionne avec EF • Sample LINQ Query: var todos = (from t in context.ToDos orderby t.CreatedDate descending select t).Take(number).ToList(); Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Démo • Nous allons : Ajouter une connexion à une base de donnée dans le fichier web.conf Installer et configurer Entity Framework Créer une application web « ToDo » Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La configuration de l’accès à une base de données en passant par le fichier web.conf • Entity Framework • Linq Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Développement de Contrôleurs ASP.NET MVC 4 Créer des contrôleurs et leurs actions Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Répondre aux requêtes utilisateurs à l’aide des Actions • Passer des paramètres aux « Vues » • Qu’est-ce que le « Controller Factory » • Démo Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Répondre aux requêtes utilisateur à l’aide des Actions • Création d’un contrôleur et de ses actions: Création d’une action simple Utilisation des types GET et POST Création d’une Action Result personnalisée • Exemple d’Action public ActionResult First () { ToDo firstToDo= context.ToDos.ToList()[0]; if (firstToDo != null) { return View("Details", firstToDo); } else { return HttpNotFound(); } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Les paramètres d’actions Le DefaultModelBinder permet d’obtenir le titre passé en paramètre de la query string et le transmetre automatiquement à la méthode GetToDoByTitle http://www.alphorm.com/ToDo/gettodobytitle?title=myfirsttodo DefaultModelBinder public ActionResult GetToDoByTitle (string title){ var query = from p in context.ToDos where p.Title == title select p; ToDo requestedTODo = (ToDo)query.FirstOrDefault(); return View("Details", requestedToDo ); } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Passé des paramètres aux vues • Pour transmettre des paramètres aux vues vous avez trois possibilités : “View()“ méthode helper : Pour lier vos entités à la vue View()“ “ViewBag” propriété Dynamique (Ex : ViewBag.MaVar = “Bonjour”) ViewBag” Dictionary” “ViewData Dictionary” propriété : Utilisée avec MVC2, elle est remplacée par ViewBag depuis MVC3, elle reste utilisable pour assurer la rétrocompatibilité Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Qu’est-ce le « Controller Factory » Permet d’implémenter son propre gestionnaire de contrôleur (DefaultControllerFactory DefaultControllerFactory) DefaultControllerFactory Le gestionnaire doit hériter de IControllerFactory La classe doit être instancié dans le fichier Global.asax Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Démo En utilisant le projet ToDo nous allons : • Créer un Controller Factory • Créer les 4 méthodes CRUD (Create, Read, Update, Delete) pour les commentaires • Créer un moteur de recherche permettant de filtrer la liste des « ToDo » Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La création de contrôleur et d’action • Le passage de paramètre (ViewBag ViewBag) ViewBag • Controller Factory Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Développement de Contrôleurs ASP.NET MVC 4 Utiliser les filtres Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Qu’est ce qu’un filtre ? • Créer et utiliser les filtres d’actions Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Qu’est ce qu’un filtre ? Certaines actions doivent être exécutée à des moments spécifiques : • Les autorisations • Les logs • Le système de cache Il existes 4 types de filtre : • Les filtres d’autorisations : sont exécutés avant les autres filtres et avant l’exécution des méthodes d’actions • Les filtres d’action: peuvent s’exécuter avant ou après, l’exécution des actions • Les filtres de retour : peuvent s’exécuter avant ou après, l’exécution des actions • Les filtres d’exceptions : permet d’interception les exceptions, l’exécution des actions Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Créer et utiliser les filtres • Pour les filtres de type : • Autorisation : AuthorizeAttribute • Action et Result : ActionFilterAttribute • Exception : HandleErrorAttribute public class SimpleActionFilter : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { Debug.WriteLine("This Event Fired: OnActionExecuting"); } public override void OnActionExecuted(ActionExecutedContext filterContext) { Debug.WriteLine("This Event Fired: OnActionExecuted"); } } Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • Les types de filtre • Créer et utiliser les filtres Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Développement de Vues ASP.NET MVC 4 Créer des vues avec Razor Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Présentation de Razor • Les méthodes Helpers • Les vues partielles Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Razor 1/2 – La syntaxe • Excution côté serveur • @ ou @{ } • Pour écrire un @ : @@ • Détection automatique du HTML (ou<text></text>) • @varName ou @ViewBag.VarName • @if() {}, @foreach(var item in items) {} Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Razor 2/2 - Binding • @model : paramètre dans le helper View (model) • ViewBag • TempData • Session[“keyName”] Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Les méthodes Helpers 1/2 – L’affichage • @Html.ActionLink Permet de créer un lien • @Html.DisplayNameFor() Html.DisplayNameFor() • @Html.DisplayFor() Html.DisplayFor() • @Html.Raw() Html.Raw() • @Url.Action() Url.Action() Affiche le nom d’une variable Affiche le contenu d’une variable Affiche du texte sans les balises HTML Méthode d’action Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Les méthodes Helpers 2/2 – Les formulaires • @Html.BeginForm() Html.BeginForm() Permet de créer un formulaire • @Html.LabelFor() Html.LabelFor() Créer un label pour un paramètre • @Html.EditorFor() Html.EditorFor() Créer un input pour un paramètre • @Html.ValidationSummary() Html.ValidationSummary() Permet d’afficher la liste des erreurs de saisie • @Url.ValidationMessageFor() Url.ValidationMessageFor() Permet d’afficher l’erreur liée à un champs spécifique Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Les vues partielles • Par convention : _NomDeLaVuePartielle _NomDeLaVuePartielle • Action avec un retour PartielViewResult • @Html.Partial() Html.Partial() Si on utilise le même modèle que la classe mère • @Html.Action() Html.Action() Si on utilise un modèle indépendant • @ViewBag et ViewData accessible Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • La syntaxe Razor • Les méthodes permettant de générer : Des liens Des Formulaires Des Messages d’erreurs • La réutilisation du code Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Tests et débogage d'application Web ASP.NET MVC 4 Les tests unitaires dans une application MVC Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Ecrire des tests unitaires avec Visual Studio • Définir un contexte • Nuget : Gestionnaire de Package • IoC : Ninject • MOCK : Moq Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ecrire des tests unitaires avec Visual Studio • Créer un nouveau projet TEST • Ajouter la référence au projet de TEST • Utilisation de Assert • Utilisation de faux objets, Mock (MOQ) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Définir un contexte • Créer un contexte pour les tests • Définir un contexte EF différent • Utilisation du constructeur pour spécifier un contexte différent • Utilisation de IoC (Ninject) Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Nuget : Gestionnaire de Package • NuGet est un gestionnaire de paquets libres et open source pour le Framework .NET • NuGet est une extension de Visual Studio Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • IoC : Ninject • IoC : Inversion of Control • Faible couplage (facilite les tests) • Facilite le changement • IDepencyResolver IKernel ninjectKernel = new StandardKernel(); ninjectKernel.Bind<IRepository>().To<Repository>() .WithConstructorArgument("", ""); var rep = ninjectKernel.Get<IRepository>(); rep.Add(maTodo); Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Mock : Moq • Permet de créer de faux objets pour simuler l’application • Permet de tester le comportement d’autres objets Démo ☺ Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • Les test unitaires • Assert • Nuget • IoC • Mock Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Tests et débogage d'application Web ASP.NET MVC 4 Mettre en place une stratégie de gestion des exceptions Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Développez des applications Web avec ASP.NET MVC 4 (70-486) Djamel BOUCHOUCHA Consultant .NET et Formateur Formateur WUITS Contact : djamel.b@wuits.fr alphorm.com™©
    • Plan • Interception des exceptions • Enregistrer les exceptions • Health Monitoring et ELMAH Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Interception des exceptions • Try; Catch; Finnaly • Rédéfinition de la méthode OnException • Utilisation de l’annotation [HandleError] <customErrors mode="On" defaultRedirect="Error" /> Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Enregistrer les exceptions • Utilisation des filtres et d’un système de persistance • Observateur d'événements Windows • Log4net Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Health Monitoring et ELMAH • Health Monitoring ASP.Net Health monitoring est une méchanisme permettant de créer et configurer un système de log. • Elmah Disponible sur Nuget, permet d’enregistrer et de générer un rapport détaillé des différents erreurs levees par votre l’application. Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©
    • Ce qu’on a couvert • L’interception des excetpions • La nécessité d’enregistrer les exceptions • Health Monitoring et Elmah Développez des applications Web avec ASP.NET MVC 4 (70-486) alphorm.com™©