SlideShare una empresa de Scribd logo
1 de 27
Développement web avec
Visual Studio 2012 et ASP.NET




Module 7 – Intégration d’AJAX et des Services Web

                                                    Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




     Objectifs du module                                                                                      2



   Permettre aux développeurs de créer des services web orientés AJAX
   Permettre aux développeurs d’appeler ces services à partir de JavaScript
   Permettre d’activer le rafraîchissement partiel dans une page web




Module 7 -Intégration d’AJAX et des Services Web                 Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




     Plan du module                                                                                 3



   Technologies AJAX
   Chargement Partiel Des Pages
   Services Web




Module 7 -Intégration d’AJAX et des Services Web       Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




                 4
                                                     Module 7 - Intégration d’AJAX et des Services Web




                                            Section 1 : Technologies AJAX


Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Introduction à AJAX                                                                                                    5




         Asynchronous Javascript And XML




                                                                                                               Module 7 - Intégration d’AJAX et des Services
         AJAX est un ensemble de technologies intégrant le web 2.0
         AJAX permet d’augmenter la réactivité des pages et des applications web
         Entre autres, AJAX permet le rafraîchissement partiel des pages et




                                                                                                                                    Web
          l’invocation asynchrone des services web
         AJAX est indépendant des plateformes, des navigateurs et des langages de
          programmation


Section 1 : Technologies AJAX                                       Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Requêtes AJAX                                                                                                          6




         Ajax crée des requêtes de type « XMLHttpRequest » permettant le




                                                                                                               Module 7 - Intégration d’AJAX et des Services
          dialogue avec le serveur
         Plusieurs formats peuvent être utilisés pour les données échangées entre
          serveurs et clients : XML ou JSON (JavaScript Object Notation)




                                                                                                                                    Web
         JSON est de plus en plus apprécié par la communauté des développeurs
          car il permet aux réponses d’être directement manipulées par JavaScript
          et réduit la taille des données



Section 1 : Technologies AJAX                                       Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Implémentation dans ASP.NET                                                                                                  7




                                ASP.NET AJAX       Serveur




                                                                                                                     Module 7 - Intégration d’AJAX et des Services
                                                                                                                                          Web
                Client




                                                             Client
                                  Microsoft AJAX
                                                                      JQuery
                                      Library



Section 1 : Technologies AJAX                                             Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Implémentation d’AJAX                                                                                                    8




         Les contrôles côté serveur permettent de fournir au clients des services




                                                                                                                 Module 7 - Intégration d’AJAX et des Services
          leur permettant d’intégrer AJAX aux applications
         Les services peuvent être accédés par des bibliothèques côté client telles
          que « Microsoft AJAX Library » ou « JQuery"




                                                                                                                                      Web
Section 1 : Technologies AJAX                                         Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Le composant ScriptManager                                                                                             9




         Le composant ScriptManager gère l’intégration d’AJAX dans les




                                                                                                               Module 7 - Intégration d’AJAX et des Services
          applications web
         L’une des fonctionnalités du ScriptManager est de permettre le
          chargement partiel des pages en utilisant le composant UpdatePanel




                                                                                                                                    Web
         ScriptManager permet aussi d’exposer les services web aux clients afin
          d’être invoqués par JavaScript ou des bibliothèques comme JQuery




Section 1 : Technologies AJAX                                       Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012

                                                 Module 7 - Intégration d’AJAX et des Services Web




                 10
                                                                        Pages
                                            Section 2 : Chargement Partiel Des




Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Le composant UpdatePanel                                                                                    11




          Le composant UpdatePanel permet de définir des régions dans la page qui
           seront sujettes à des rafraîchissements partiels




                                                                                                                  Module 7 - Intégration d’AJAX et des Services
          La coordination des rafraîchissements partiels est effectuée par le
           « ScriptManager »




                                                                                                                                       Web
          Pour les postbacks, le cycle de vie reste le même sauf que lorsque le HTML
           généré, uniquement les régions définies par un UpdatePanel sont mises à
           jour
          UpdateProgress s’affiche lorsqu’une requête de rafraîchissement est
           générée. Il affiche par exemple une GIF animée indiquant le chargement.


Section 2 : Rafraîchissement Partiel des Pages                         Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      UpdatePanel, Principales Propriétés                                                                                                     12



  Classe                                    Description
  ContentTemplate                           Le contenu du panneau




                                                                                                                                              Module 7 - Intégration d’AJAX et des Services
  UpdateMode                                Lorsque « UpdateMode » est à « Conditional », le panneau ne se met à jour
                                            que si le postback provient de l’intérieur du panneau. S’il est à « Always »,
                                            UpdatePanel se met à jour même si le postback provient d’un autre
                                            endroit.




                                                                                                                                                                   Web
Section 2 : Rafraîchissement Partiel des Pages                                                     Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      UpdateProgress, principales propriétés                                                                                                   13



  Classe                                    Description
  AssociatedUpdatePa Le « UpdatePanel » associé. Le « UpdateProgress » ne s’affiche que si un
  nelID Property     postback est généré à partir d’un panneau associé. Si aucun panneau




                                                                                                                                               Module 7 - Intégration d’AJAX et des Services
                     n’est associé, « UpdateProgress » s’affiche avec n’importe quel panneau
                     dans la page
  DisplayAfter                              Temps après lequel le panneau doit s’afficher. Pour éviter l’affichage pour
                                            les requêtes qui sont traitées rapidement.




                                                                                                                                                                    Web
  ProgressTemplate                          Modèle qui définit les balises à afficher lorsqu’il y a une requête AJAX
                                            émise.




Section 2 : Rafraîchissement Partiel des Pages                                                      Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Tutoriel 7.1 : Rafraîchissement Partiel des Pages                                         14




         • Lancer Tutoriel 7.1, étape 1 et 2




                                                                                                Module 7 - Intégration d’AJAX et des Services
                                                                                                                     Web
Section 2 : Rafraîchissement Partiel des Pages       Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012

                                                    Module 7 - Intégration d’AJAX et des Services Web




                 15
                                            Section 3 : Services Web


Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Introduction                                                                                                16




          Les services web permet aux clients (consommateurs) des fournir des




                                                                                                                  Module 7 - Intégration d’AJAX et des Services
           fonctionnalités sans avoir accès aux codes et aux binaires de l’application
          Les services web sont un excellent moyen d’assurer l’interopérabilité des
           systèmes vu que le clients et les serveurs peuvent être sur des plateformes




                                                                                                                                       Web
           différentes
          Les services web sont accessibles vu qu’ils utilisent HTTP comme moyen
           de transport



Section 3 : Services Web                                               Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Windows Communication Foundation                                                                             17




          WCF permet la construction et le déploiement de services web




                                                                                                                   Module 7 - Intégration d’AJAX et des Services
          WCF est une composante du .NET Framework
          Un service WCF est construit en C# comme n’importe quelle application
          Un service WCF peut être hébergé dans IIS, dans un service Windows ou




                                                                                                                                        Web
           dans une application dédiée
          WCF prend en charge tous les protocoles et les formats d’échange
          WCF est configurable via les fichiers de configuration


Section 3 : Services Web                                                Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Services WCF                                                                                                     18




          Les services WCF sont des modules fonctionnels accessibles en boîte noire via le




                                                                                                                       Module 7 - Intégration d’AJAX et des Services
           réseau ou internet
          Les services sont basés sur des standards internet tels que HTTP, XML ou JSON
          Les consommateurs des services ne sont pas forcément des applications .NET




                                                                                                                                            Web
          Les fonctionnalités sont exposées à travers les services sous forme de contrats
          Grâce aux mécanismes de sérialisation, WCF peut fournir des données sous
           forme d’objets .NET aux clients même dans d’autres plateformes




Section 3 : Services Web                                                    Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Points d’accès WCF                                                                                     19



 Un point d’accès WCF est un élément permettant de se connecter et de
  consommer un service WCF : il est composé des éléments suivants :




                                                                                                             Module 7 - Intégration d’AJAX et des Services
                                          Adresse




                                                                                                                                  Web
                           Comportement             Binding




                                          Contrat




Section 3 : Services Web                                          Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      WCF / Adresse                                                                                   20



 Utiliser par les clients pour localiser le service
 L’adresse est représentée par une URI




                                                                                                      Module 7 - Intégration d’AJAX et des Services
                                                                                                                           Web
Section 3 : Services Web                                   Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      WCF / Binding                                                                                          21



 Spécifie quel protocole utiliser pour le transport : HTTP ou TCP
 Comment formater et sérialiser les messages (Binaires / XML / JSON)




                                                                                                             Module 7 - Intégration d’AJAX et des Services
 Des contraintes de sécurité comme SSL




                                                                                                                                  Web
Section 3 : Services Web                                          Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      WCF / Contrat                                                                                            22



 Le contrat est l’ensemble des fonctionnalités offertes par le service et
  utilisées par le client




                                                                                                               Module 7 - Intégration d’AJAX et des Services
 Le contrat indique quelles opérations peuvent êtres appelées par les
  clients et avec quels paramètres
 Le contrat indique les données renvoyées par un service




                                                                                                                                    Web
Section 3 : Services Web                                            Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      WCF / Comportements                                                                                   23



 Les comportements définissent certaines contraintes techniques requises
  ou fournies par le service




                                                                                                            Module 7 - Intégration d’AJAX et des Services
 Les comportements définissent des attributs comme la sécurité, le cache,
  le logging ou la gestion de la concurrence




                                                                                                                                 Web
Section 3 : Services Web                                         Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      WCF Exemple de configuration                                                                                                              24


<system.serviceModel>

    <behaviors>

      <endpointBehaviors>

        <behavior name="TestAJAX.ProductServiceAspNetAjaxBehavior">




                                                                                                                                                Module 7 - Intégration d’AJAX et des Services
          <enableWebScript />

        </behavior>

      </endpointBehaviors>

    </behaviors>

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"




                                                                                                                                                                     Web
      multipleSiteBindingsEnabled="true" />

    <services>

      <service name="TestAJAX.ProductService">

        <endpoint address="" behaviorConfiguration="TestAJAX.ProductServiceAspNetAjaxBehavior"

          binding="webHttpBinding" contract="TestAJAX.ProductService" />

      </service>

    </services>

 </system.serviceModel>



Section 3 : Services Web                                                                             Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Tutoriel 7.1 : Création d’un Service Web                                                  25




         • Lancer Tutoriel 7.1, étape 3




                                                                                                Module 7 - Intégration d’AJAX et des Services
                                                                                                                     Web
Section 3 : Services Web                             Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Accès aux Services WCF depuis un client JavaScript                                                     26



 Grâce à la propriété « Services » du composant « ScriptManager »,
  ASP.NET génère des « proxies » qui permettent aux fonctions écrites en




                                                                                                             Module 7 - Intégration d’AJAX et des Services
  JavaScript d’appeler directement des services WCF
 « ScriptManager » permet une intégration transparente avec « Jquery »
  ou « Microsoft Ajax Library »




                                                                                                                                  Web
 Les services peuvent être appelés directement en utilisant « $.ajax » de
  JQuery et l’URL du service




Section 3 : Services Web                                          Copyright © 2013, Mostefai Mohammed Amine
Développement web avec ASP.NET et Visual Studio 2012




      Tutoriel 7.1 : Invocation du service depuis JavaScript                                  27




         • Lancer Tutoriel 7.1, étape 4




                                                                                              Module 7 - Intégration d’AJAX et des Services
                                                                                                                   Web
Section 3 : Services Web                           Copyright © 2013, Mostefai Mohammed Amine

Más contenido relacionado

La actualidad más candente

Développement Web - Module 1 - Introduction
Développement Web - Module 1 - IntroductionDéveloppement Web - Module 1 - Introduction
Développement Web - Module 1 - IntroductionMohammed Amine Mostefai
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Nazih Heni
 
Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Nazih Heni
 
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...Siham Rim Boudaoud
 
Présentation prime facesfinal
Présentation prime facesfinalPrésentation prime facesfinal
Présentation prime facesfinalAymen Drira
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouazInes Ouaz
 
J2eeintro
J2eeintroJ2eeintro
J2eeintromedbmb
 
Application Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateApplication Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateInes Ouaz
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapportInes Ouaz
 
Jsf 110530152515-phpapp01
Jsf 110530152515-phpapp01Jsf 110530152515-phpapp01
Jsf 110530152515-phpapp01Eric Bourdet
 
Silverlight 3.MSDays EPITA 11/06/2009
Silverlight 3.MSDays EPITA 11/06/2009Silverlight 3.MSDays EPITA 11/06/2009
Silverlight 3.MSDays EPITA 11/06/2009Frédéric Queudret
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz InesInes Ouaz
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'artTugdual Grall
 
Outillage pour Windows 8 XAML
Outillage pour Windows 8 XAMLOutillage pour Windows 8 XAML
Outillage pour Windows 8 XAMLMicrosoft
 

La actualidad más candente (20)

Workflow Foundation - Cours 5
Workflow Foundation - Cours 5Workflow Foundation - Cours 5
Workflow Foundation - Cours 5
 
Développement Web - Module 1 - Introduction
Développement Web - Module 1 - IntroductionDéveloppement Web - Module 1 - Introduction
Développement Web - Module 1 - Introduction
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"
 
Le langage html
Le langage htmlLe langage html
Le langage html
 
Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"
 
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...
Mémoire de Licence, site web dynamique sous JEE, application aux entreprises ...
 
Présentation WPF
Présentation  WPFPrésentation  WPF
Présentation WPF
 
Présentation prime facesfinal
Présentation prime facesfinalPrésentation prime facesfinal
Présentation prime facesfinal
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouaz
 
J2eeintro
J2eeintroJ2eeintro
J2eeintro
 
Application Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateApplication Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & Hibernate
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapport
 
Java Entreprise Edition
Java Entreprise EditionJava Entreprise Edition
Java Entreprise Edition
 
Jsf 110530152515-phpapp01
Jsf 110530152515-phpapp01Jsf 110530152515-phpapp01
Jsf 110530152515-phpapp01
 
Silverlight 3.MSDays EPITA 11/06/2009
Silverlight 3.MSDays EPITA 11/06/2009Silverlight 3.MSDays EPITA 11/06/2009
Silverlight 3.MSDays EPITA 11/06/2009
 
3 Jsf
3 Jsf3 Jsf
3 Jsf
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz Ines
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'art
 
Outillage pour Windows 8 XAML
Outillage pour Windows 8 XAMLOutillage pour Windows 8 XAML
Outillage pour Windows 8 XAML
 
2 ModéLe Mvc
2 ModéLe Mvc2 ModéLe Mvc
2 ModéLe Mvc
 

Destacado

Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Mieux Filtrer ses listes WordPress avec Ajax et WP_Query
Mieux Filtrer ses listes WordPress avec Ajax et WP_QueryMieux Filtrer ses listes WordPress avec Ajax et WP_Query
Mieux Filtrer ses listes WordPress avec Ajax et WP_QuerySymetris
 
Ajax et Accessibilite
Ajax et AccessibiliteAjax et Accessibilite
Ajax et Accessibilitemikeh
 
Accéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.NetAccéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.NetFrédéric Vandenbriele
 
ASP.NET MVC 6
ASP.NET MVC 6ASP.NET MVC 6
ASP.NET MVC 6Microsoft
 
Veille et information partagée
Veille et information partagéeVeille et information partagée
Veille et information partagéeEmilie Marquois
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5Microsoft
 
Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Abdelouahed Abdou
 
Design Thinking Assignment
Design Thinking AssignmentDesign Thinking Assignment
Design Thinking AssignmentSalma ES-Salmani
 

Destacado (20)

Wf module3
Wf module3Wf module3
Wf module3
 
Le Langage CSS
Le Langage CSSLe Langage CSS
Le Langage CSS
 
Microsoft Workflow Foundation - Cours 2
Microsoft Workflow Foundation - Cours 2Microsoft Workflow Foundation - Cours 2
Microsoft Workflow Foundation - Cours 2
 
Présentation cloud journée azure
Présentation cloud   journée azurePrésentation cloud   journée azure
Présentation cloud journée azure
 
Introduction to Workflow Foundation
Introduction to Workflow FoundationIntroduction to Workflow Foundation
Introduction to Workflow Foundation
 
Introduction aux technologies mobiles
Introduction aux technologies mobilesIntroduction aux technologies mobiles
Introduction aux technologies mobiles
 
Méthodes Agiles - Généralités
Méthodes Agiles - GénéralitésMéthodes Agiles - Généralités
Méthodes Agiles - Généralités
 
Le Manifeste Agile
Le Manifeste AgileLe Manifeste Agile
Le Manifeste Agile
 
Présentation sharepoint 2013
Présentation sharepoint 2013Présentation sharepoint 2013
Présentation sharepoint 2013
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Ws asp.net
Ws asp.netWs asp.net
Ws asp.net
 
Mieux Filtrer ses listes WordPress avec Ajax et WP_Query
Mieux Filtrer ses listes WordPress avec Ajax et WP_QueryMieux Filtrer ses listes WordPress avec Ajax et WP_Query
Mieux Filtrer ses listes WordPress avec Ajax et WP_Query
 
Ajax et Accessibilite
Ajax et AccessibiliteAjax et Accessibilite
Ajax et Accessibilite
 
Accéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.NetAccéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.Net
 
ASP.NET MVC 6
ASP.NET MVC 6ASP.NET MVC 6
ASP.NET MVC 6
 
Veille et information partagée
Veille et information partagéeVeille et information partagée
Veille et information partagée
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09
 
Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5Quoi de neuf dans ASP.NET 4.5
Quoi de neuf dans ASP.NET 4.5
 
Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)
 
Design Thinking Assignment
Design Thinking AssignmentDesign Thinking Assignment
Design Thinking Assignment
 

Similar a Module 7 intégration d'ajax et les services web dans les applications asp.net

M20486 formation-developper-des-applications-web-asp-net-mvc-4
M20486 formation-developper-des-applications-web-asp-net-mvc-4M20486 formation-developper-des-applications-web-asp-net-mvc-4
M20486 formation-developper-des-applications-web-asp-net-mvc-4CERTyou Formation
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)Yacine Rezgui
 
Introduction au Framework AngularJs
Introduction au Framework AngularJsIntroduction au Framework AngularJs
Introduction au Framework AngularJsRadhoueneRouached
 
Ajax en Java - GTI780 & MTI780 - ETS - A08
Ajax en Java - GTI780 & MTI780 - ETS - A08Ajax en Java - GTI780 & MTI780 - ETS - A08
Ajax en Java - GTI780 & MTI780 - ETS - A08Claude Coulombe
 
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...CERTyou Formation
 
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010CERTyou Formation
 
WebApp #4 : Consuming REST APIs
WebApp #4 : Consuming REST APIs WebApp #4 : Consuming REST APIs
WebApp #4 : Consuming REST APIs Jean Michel
 
03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA 03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA Cellenza
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesENSET, Université Hassan II Casablanca
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Tugdual Grall
 
Cloud & Google app engine Presentation by Ngiambus Marcus
 Cloud & Google app engine Presentation  by Ngiambus Marcus Cloud & Google app engine Presentation  by Ngiambus Marcus
Cloud & Google app engine Presentation by Ngiambus MarcusMarc NGIAMBA
 
SMART Media Center For OPCMA
SMART Media Center For OPCMASMART Media Center For OPCMA
SMART Media Center For OPCMACHAKER ALLAOUI
 
ESTEM_ReactJS_S1.pptx
ESTEM_ReactJS_S1.pptxESTEM_ReactJS_S1.pptx
ESTEM_ReactJS_S1.pptxaissamjadli
 

Similar a Module 7 intégration d'ajax et les services web dans les applications asp.net (20)

Prezentare ASP.Net.pptx
Prezentare ASP.Net.pptxPrezentare ASP.Net.pptx
Prezentare ASP.Net.pptx
 
M20486 formation-developper-des-applications-web-asp-net-mvc-4
M20486 formation-developper-des-applications-web-asp-net-mvc-4M20486 formation-developper-des-applications-web-asp-net-mvc-4
M20486 formation-developper-des-applications-web-asp-net-mvc-4
 
Tutoriel ajax jquery
Tutoriel ajax jqueryTutoriel ajax jquery
Tutoriel ajax jquery
 
jQuery vs AngularJS
jQuery vs AngularJS jQuery vs AngularJS
jQuery vs AngularJS
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Introduction au Framework AngularJs
Introduction au Framework AngularJsIntroduction au Framework AngularJs
Introduction au Framework AngularJs
 
Ajax en Java - GTI780 & MTI780 - ETS - A08
Ajax en Java - GTI780 & MTI780 - ETS - A08Ajax en Java - GTI780 & MTI780 - ETS - A08
Ajax en Java - GTI780 & MTI780 - ETS - A08
 
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...
M10264 formation-developper-des-applications-web-avec-microsoft-visual-studio...
 
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010
M10557 formation-introduction-au-developpement-web-avec-visual-studio-2010
 
WebApp #4 : Consuming REST APIs
WebApp #4 : Consuming REST APIs WebApp #4 : Consuming REST APIs
WebApp #4 : Consuming REST APIs
 
03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA 03 - [ASP.NET Core] Services RESTful et SPA
03 - [ASP.NET Core] Services RESTful et SPA
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)
 
Ajax
AjaxAjax
Ajax
 
Cloud & Google app engine Presentation by Ngiambus Marcus
 Cloud & Google app engine Presentation  by Ngiambus Marcus Cloud & Google app engine Presentation  by Ngiambus Marcus
Cloud & Google app engine Presentation by Ngiambus Marcus
 
SMART Media Center For OPCMA
SMART Media Center For OPCMASMART Media Center For OPCMA
SMART Media Center For OPCMA
 
ESTEM_ReactJS_S1.pptx
ESTEM_ReactJS_S1.pptxESTEM_ReactJS_S1.pptx
ESTEM_ReactJS_S1.pptx
 
Java Server Faces - Beyond
Java Server Faces - BeyondJava Server Faces - Beyond
Java Server Faces - Beyond
 

Más de Mohammed Amine Mostefai

Más de Mohammed Amine Mostefai (10)

Utilisation de Sharepoint (Collaboration)
Utilisation de Sharepoint (Collaboration)Utilisation de Sharepoint (Collaboration)
Utilisation de Sharepoint (Collaboration)
 
Utilisation de Sharepoint 2013 - Personnalisation
Utilisation de Sharepoint 2013 - PersonnalisationUtilisation de Sharepoint 2013 - Personnalisation
Utilisation de Sharepoint 2013 - Personnalisation
 
Utilisation Sharepoint (Listes)
Utilisation Sharepoint (Listes)Utilisation Sharepoint (Listes)
Utilisation Sharepoint (Listes)
 
Utilisation de Sharepoint - Gestion de Documents
Utilisation de Sharepoint - Gestion de DocumentsUtilisation de Sharepoint - Gestion de Documents
Utilisation de Sharepoint - Gestion de Documents
 
Utilisation de Sharepoiunt - Introduction
Utilisation de Sharepoiunt - IntroductionUtilisation de Sharepoiunt - Introduction
Utilisation de Sharepoiunt - Introduction
 
Pratiques agiles
Pratiques agilesPratiques agiles
Pratiques agiles
 
Introduction à Scrum
Introduction à ScrumIntroduction à Scrum
Introduction à Scrum
 
Méthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XPMéthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XP
 
Workflow Foundation Module 4
Workflow Foundation Module 4Workflow Foundation Module 4
Workflow Foundation Module 4
 
Conduite de projet innovants
Conduite de projet innovantsConduite de projet innovants
Conduite de projet innovants
 

Module 7 intégration d'ajax et les services web dans les applications asp.net

  • 1. Développement web avec Visual Studio 2012 et ASP.NET Module 7 – Intégration d’AJAX et des Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 2. Développement web avec ASP.NET et Visual Studio 2012 Objectifs du module 2  Permettre aux développeurs de créer des services web orientés AJAX  Permettre aux développeurs d’appeler ces services à partir de JavaScript  Permettre d’activer le rafraîchissement partiel dans une page web Module 7 -Intégration d’AJAX et des Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 3. Développement web avec ASP.NET et Visual Studio 2012 Plan du module 3  Technologies AJAX  Chargement Partiel Des Pages  Services Web Module 7 -Intégration d’AJAX et des Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 4. Développement web avec ASP.NET et Visual Studio 2012 4 Module 7 - Intégration d’AJAX et des Services Web Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 5. Développement web avec ASP.NET et Visual Studio 2012 Introduction à AJAX 5  Asynchronous Javascript And XML Module 7 - Intégration d’AJAX et des Services  AJAX est un ensemble de technologies intégrant le web 2.0  AJAX permet d’augmenter la réactivité des pages et des applications web  Entre autres, AJAX permet le rafraîchissement partiel des pages et Web l’invocation asynchrone des services web  AJAX est indépendant des plateformes, des navigateurs et des langages de programmation Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 6. Développement web avec ASP.NET et Visual Studio 2012 Requêtes AJAX 6  Ajax crée des requêtes de type « XMLHttpRequest » permettant le Module 7 - Intégration d’AJAX et des Services dialogue avec le serveur  Plusieurs formats peuvent être utilisés pour les données échangées entre serveurs et clients : XML ou JSON (JavaScript Object Notation) Web  JSON est de plus en plus apprécié par la communauté des développeurs car il permet aux réponses d’être directement manipulées par JavaScript et réduit la taille des données Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 7. Développement web avec ASP.NET et Visual Studio 2012 Implémentation dans ASP.NET 7 ASP.NET AJAX Serveur Module 7 - Intégration d’AJAX et des Services Web Client Client Microsoft AJAX JQuery Library Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 8. Développement web avec ASP.NET et Visual Studio 2012 Implémentation d’AJAX 8  Les contrôles côté serveur permettent de fournir au clients des services Module 7 - Intégration d’AJAX et des Services leur permettant d’intégrer AJAX aux applications  Les services peuvent être accédés par des bibliothèques côté client telles que « Microsoft AJAX Library » ou « JQuery" Web Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 9. Développement web avec ASP.NET et Visual Studio 2012 Le composant ScriptManager 9  Le composant ScriptManager gère l’intégration d’AJAX dans les Module 7 - Intégration d’AJAX et des Services applications web  L’une des fonctionnalités du ScriptManager est de permettre le chargement partiel des pages en utilisant le composant UpdatePanel Web  ScriptManager permet aussi d’exposer les services web aux clients afin d’être invoqués par JavaScript ou des bibliothèques comme JQuery Section 1 : Technologies AJAX Copyright © 2013, Mostefai Mohammed Amine
  • 10. Développement web avec ASP.NET et Visual Studio 2012 Module 7 - Intégration d’AJAX et des Services Web 10 Pages Section 2 : Chargement Partiel Des Copyright © 2013, Mostefai Mohammed Amine
  • 11. Développement web avec ASP.NET et Visual Studio 2012 Le composant UpdatePanel 11  Le composant UpdatePanel permet de définir des régions dans la page qui seront sujettes à des rafraîchissements partiels Module 7 - Intégration d’AJAX et des Services  La coordination des rafraîchissements partiels est effectuée par le « ScriptManager » Web  Pour les postbacks, le cycle de vie reste le même sauf que lorsque le HTML généré, uniquement les régions définies par un UpdatePanel sont mises à jour  UpdateProgress s’affiche lorsqu’une requête de rafraîchissement est générée. Il affiche par exemple une GIF animée indiquant le chargement. Section 2 : Rafraîchissement Partiel des Pages Copyright © 2013, Mostefai Mohammed Amine
  • 12. Développement web avec ASP.NET et Visual Studio 2012 UpdatePanel, Principales Propriétés 12 Classe Description ContentTemplate Le contenu du panneau Module 7 - Intégration d’AJAX et des Services UpdateMode Lorsque « UpdateMode » est à « Conditional », le panneau ne se met à jour que si le postback provient de l’intérieur du panneau. S’il est à « Always », UpdatePanel se met à jour même si le postback provient d’un autre endroit. Web Section 2 : Rafraîchissement Partiel des Pages Copyright © 2013, Mostefai Mohammed Amine
  • 13. Développement web avec ASP.NET et Visual Studio 2012 UpdateProgress, principales propriétés 13 Classe Description AssociatedUpdatePa Le « UpdatePanel » associé. Le « UpdateProgress » ne s’affiche que si un nelID Property postback est généré à partir d’un panneau associé. Si aucun panneau Module 7 - Intégration d’AJAX et des Services n’est associé, « UpdateProgress » s’affiche avec n’importe quel panneau dans la page DisplayAfter Temps après lequel le panneau doit s’afficher. Pour éviter l’affichage pour les requêtes qui sont traitées rapidement. Web ProgressTemplate Modèle qui définit les balises à afficher lorsqu’il y a une requête AJAX émise. Section 2 : Rafraîchissement Partiel des Pages Copyright © 2013, Mostefai Mohammed Amine
  • 14. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 7.1 : Rafraîchissement Partiel des Pages 14 • Lancer Tutoriel 7.1, étape 1 et 2 Module 7 - Intégration d’AJAX et des Services Web Section 2 : Rafraîchissement Partiel des Pages Copyright © 2013, Mostefai Mohammed Amine
  • 15. Développement web avec ASP.NET et Visual Studio 2012 Module 7 - Intégration d’AJAX et des Services Web 15 Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 16. Développement web avec ASP.NET et Visual Studio 2012 Introduction 16  Les services web permet aux clients (consommateurs) des fournir des Module 7 - Intégration d’AJAX et des Services fonctionnalités sans avoir accès aux codes et aux binaires de l’application  Les services web sont un excellent moyen d’assurer l’interopérabilité des systèmes vu que le clients et les serveurs peuvent être sur des plateformes Web différentes  Les services web sont accessibles vu qu’ils utilisent HTTP comme moyen de transport Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 17. Développement web avec ASP.NET et Visual Studio 2012 Windows Communication Foundation 17  WCF permet la construction et le déploiement de services web Module 7 - Intégration d’AJAX et des Services  WCF est une composante du .NET Framework  Un service WCF est construit en C# comme n’importe quelle application  Un service WCF peut être hébergé dans IIS, dans un service Windows ou Web dans une application dédiée  WCF prend en charge tous les protocoles et les formats d’échange  WCF est configurable via les fichiers de configuration Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 18. Développement web avec ASP.NET et Visual Studio 2012 Services WCF 18  Les services WCF sont des modules fonctionnels accessibles en boîte noire via le Module 7 - Intégration d’AJAX et des Services réseau ou internet  Les services sont basés sur des standards internet tels que HTTP, XML ou JSON  Les consommateurs des services ne sont pas forcément des applications .NET Web  Les fonctionnalités sont exposées à travers les services sous forme de contrats  Grâce aux mécanismes de sérialisation, WCF peut fournir des données sous forme d’objets .NET aux clients même dans d’autres plateformes Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 19. Développement web avec ASP.NET et Visual Studio 2012 Points d’accès WCF 19  Un point d’accès WCF est un élément permettant de se connecter et de consommer un service WCF : il est composé des éléments suivants : Module 7 - Intégration d’AJAX et des Services Adresse Web Comportement Binding Contrat Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 20. Développement web avec ASP.NET et Visual Studio 2012 WCF / Adresse 20  Utiliser par les clients pour localiser le service  L’adresse est représentée par une URI Module 7 - Intégration d’AJAX et des Services Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 21. Développement web avec ASP.NET et Visual Studio 2012 WCF / Binding 21  Spécifie quel protocole utiliser pour le transport : HTTP ou TCP  Comment formater et sérialiser les messages (Binaires / XML / JSON) Module 7 - Intégration d’AJAX et des Services  Des contraintes de sécurité comme SSL Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 22. Développement web avec ASP.NET et Visual Studio 2012 WCF / Contrat 22  Le contrat est l’ensemble des fonctionnalités offertes par le service et utilisées par le client Module 7 - Intégration d’AJAX et des Services  Le contrat indique quelles opérations peuvent êtres appelées par les clients et avec quels paramètres  Le contrat indique les données renvoyées par un service Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 23. Développement web avec ASP.NET et Visual Studio 2012 WCF / Comportements 23  Les comportements définissent certaines contraintes techniques requises ou fournies par le service Module 7 - Intégration d’AJAX et des Services  Les comportements définissent des attributs comme la sécurité, le cache, le logging ou la gestion de la concurrence Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 24. Développement web avec ASP.NET et Visual Studio 2012 WCF Exemple de configuration 24 <system.serviceModel> <behaviors> <endpointBehaviors> <behavior name="TestAJAX.ProductServiceAspNetAjaxBehavior"> Module 7 - Intégration d’AJAX et des Services <enableWebScript /> </behavior> </endpointBehaviors> </behaviors> <serviceHostingEnvironment aspNetCompatibilityEnabled="true" Web multipleSiteBindingsEnabled="true" /> <services> <service name="TestAJAX.ProductService"> <endpoint address="" behaviorConfiguration="TestAJAX.ProductServiceAspNetAjaxBehavior" binding="webHttpBinding" contract="TestAJAX.ProductService" /> </service> </services> </system.serviceModel> Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 25. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 7.1 : Création d’un Service Web 25 • Lancer Tutoriel 7.1, étape 3 Module 7 - Intégration d’AJAX et des Services Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 26. Développement web avec ASP.NET et Visual Studio 2012 Accès aux Services WCF depuis un client JavaScript 26  Grâce à la propriété « Services » du composant « ScriptManager », ASP.NET génère des « proxies » qui permettent aux fonctions écrites en Module 7 - Intégration d’AJAX et des Services JavaScript d’appeler directement des services WCF  « ScriptManager » permet une intégration transparente avec « Jquery » ou « Microsoft Ajax Library » Web  Les services peuvent être appelés directement en utilisant « $.ajax » de JQuery et l’URL du service Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine
  • 27. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 7.1 : Invocation du service depuis JavaScript 27 • Lancer Tutoriel 7.1, étape 4 Module 7 - Intégration d’AJAX et des Services Web Section 3 : Services Web Copyright © 2013, Mostefai Mohammed Amine