1 / 40

ESSI XML et .NET

ESSI XML et .NET . Alain Vizzini ESSI - Microsoft France http://www.essisharp.ht.st. Plan. Qui suis-je ? ESSI# ? Microsoft .NET Framework XML dans .NET Conclusion. Qui suis-je ?. Alain VIZZINI ESSI 2 – groupe II1 Email : vizzini@essi.fr

shae
Download Presentation

ESSI XML et .NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ESSIXML et .NET Alain Vizzini ESSI - Microsoft France http://www.essisharp.ht.st

  2. Plan • Qui suis-je ? ESSI# ? • Microsoft .NET Framework • XML dans .NET • Conclusion

  3. Qui suis-je ? Alain VIZZINI ESSI 2 – groupe II1 Email : vizzini@essi.fr Student Consultant pour Microsoft France depuis décembre 2001

  4. Qui suis-je ? • Ma mission : « promouvoir les produits et technologies Microsoft » • Ce que je veux faire : • Permettre à tout les ESSIens de connaître .NET, si possible de l’avoir pratiqué • Aider les ESSIens ayant des projets en .NET • Favoriser la communication Microsoft / ESSI

  5. Qui suis-je ? Comment présenter .NET aux étudiants: • Cours en amphi • TP • Site web (ESSI#) • Aide personnelle • Tout autre moyens … http://www.essisharp.ht.st

  6. ESSI# • Créé en avril 2001 • Pages composées de • Cours ou articles • TP ESSI revisités • News • Orienté .NET & C#

  7. ESSI# • Tout est fait par mes soins • Si vous cherchez du matériel et qu’il n’y est pas, faites le moi savoir …Email : vizzini@essi.fr • Domaines couverts aujourd’hui :C# vs. Java, XML, ASP.NET, ADO.NET, WebServices, .NET Remoting

  8. Plan • Qui suis-je ? ESSI# ? • Microsoft .NET Framework • XML dans .NET • Conclusion

  9. Microsoft .NET Framework Qui connaît .NET dans la salle ?

  10. Microsoft .NET Framework • Version 1 depuis début 2002 (actuellement SP2) • Nécessite WindowsXP ou 2000 SP2 ou NT4 SP6 • Existe en version SDK (pour développer) et en version runtime (pour utiliser des soft .NET) • 100% G R A T U I T !!!!!!

  11. Microsoft .NET Framework Par analogie à l’architecture Java. PS : pardonnez moi pour la vulgarisation

  12. Microsoft .NET Framework De quoi est composé le .NET Framework : • Outils (compilateurs, désassembleurs, générateurs de proxies, …) • Documentation • Exemples (beaucoup !) • Des classes regroupées en namespaces

  13. Microsoft .NET Framework Pôles de talent de .NET: • Bases de données : ADO.NET • GUI : WinForms • Web : WebForms, ASP.NET, WebServices • Cryptographie : RSA, AES (Rijndael), DES, SHA, MD5, … • Utilisation facilitée des API Windows • Garbage collection • Framework TRES étendu !

  14. Microsoft .NET FrameworkNotions de C# // fichier HelloWorld.cs using System; public class HelloCSharp{ public static void Main (String [] args){ Console.WriteLine (« Salut »); } } • import using • Classe HelloCSharp dans HelloWorld.cs : pas de problème • Point d’entrée main Main • System.out.println()  Console.WriteLine() • String  String oustring

  15. Microsoft .NET FrameworkDévelopper avec .NET Solution 1 : Emacs + outils en ligne de commande (inclus dans .NET) Solution 2 : Visual Studio .NET Payant … …mais disponible à la BU !

  16. Bilan de la première partie • Vous savez que vous avez possibilité de chercher des infos sur ESSI#http://www.essisharp.ht.st • Vous avez mon mail : vizzini@essi.fr • Vous savez ce qu’est .NET • Vous savez à quoi ressemble du C#

  17. Plan • Qui suis-je ? ESSI# ? • Microsoft .NET Framework • XML dans .NET • Conclusion

  18. XML dans .NET • De l’utilité de XML • Validation XSD • XPath • Sérialisation XML • WebServices

  19. XML dans .NETDe l’utilité de XML • Formatage de données facile à utiliser, indépendant de la machine • Peut être produit par un humain • Exemple : • Fichiers de configurations (structure stricte mais évolutive et validable)

  20. XSD Plan/schéma XML instance XML dans .NETXML et XSD Validation Conformité Oui / non

  21. XML dans .NETXML et XSD XSD Schéma XML instance

  22. XML dans .NETXML et XSD • Namespace System.Xml.Schema • Classe XmlValidatingReader • Idée • Lire un ou plusieurs schémas XSD • Parser un flux XML est signaler les erreurs par rapport aux schémas Disponible sur ESSI# http://www.essisharp.ht.st Cours  OutilGL 1

  23. XML dans .NETXPath • Recherche dans l’arbre DOM (Document Object Model) • Concept proche d’un SQL basic (requête de sélection exprimée dans un langage pas trop informatisé) • Utilisé dans .NET pour XSLT notamment

  24. Plat <Pizza,non> LaCarte Royale XML dans .NETXPath Plat <Pizza,oui> Marguerite Plat <Pizza,oui> Chèvre Plat <Quiche,non> Requête simplechild::Plat[@vegetarien=‘oui’] retourne tout les éléments de type Plat enfants de la racine, avec l’attribut vegetarien valant oui

  25. XML dans .NETXPath Programme pour tester

  26. XML dans .NETXPath • Namespace System.Xml • Exemple XmlDocument doc = new XmlDocument(unFichier); XmlNodeList nodeCollection = doc.DocumentElement.SelectNodes (requete); foreach (XmlNode n in nodeCollection) lb.Items.Add (n); Disponible sur ESSI# http://www.essisharp.ht.st  Cours 4 : XML & WebServices

  27. XML dans .NETSérialisation XML • Alternative à la sérialisation binaire (native) • Utilise un protocole définis en XML et nommé SOAP (Simple Object Access Protocol) • SOAP permet de sauver (et de relire !) des objets complexes en XML • SOAP est indépendant du langage utilisé (il suffit d’avoir un toolkit permettant de l’utiliser) • Utilisable dans les cas où les flux binaires sont interdits (firewalls, net, …)

  28. XML dans .NETSérialisation XML • Sérialiser des objets en SOAP en 3 lignes de C# ICollection objCollec; … SoapFormatter ser = newSoapFormatter(); FileStream fout = new FileStream(…); ser.Serialize(fout, objCollec); NB : SOAP est du XML, et un document XML ne contient qu’un seul élément racine… qui est souvent une collection !

  29. XML dans .NETSérialisation XML • Namespace System.Runtime.Serialization.Formatters.Soap • Exemple disponible sur ESSI#http://www.essisharp.ht.st  cours  XML & WebServices (SOAP)

  30. XML dans .NETWebServices • WebService ? Kesako ? • Principe : invocation de méthodes d’objets distant en mode faiblement connecté • Fonctionnement • Utilisation : envoi d’une requête au format SOAP (XML) par HTTP qui précise la méthode appelée et les paramètres fournis (idem pour l’envoi du résultat) • Découverte : chaque WebService expose ce qu’il sait faire dans un contrat WSDL (XML) • Les WebServices sont UNIVERSELS

  31. XML dans .NETWebServices • Universalité : permettre à des programmes • sur des machines distantes • écrits dans les langages étherogenes • sur des plateformes différentes … de communiquer de manière transparente. • Solution SOAP (Simple Object Access Protocol) : converser en XML, avec un format bien défini et bien pensé.

  32. 2.1 SOAP XML SOAP XML 2.2 1.2 1.1 WSDL XML dans .NETWebServices Client … R = Ws.DoIt(…); … WebService Proxy C#, Java, C, … WSDL C#, Java, C, … 1. Générer un proxy 2. Consommer

  33. XML dans .NETWebServices • Facilité de réalisation côté Serveur[WebMethod]public String compose (String s, int i) {…}…et un peu de glue et de clicodrome pour la mise en place. • Facilité d’utilisation côté Clientwsdl.exe http://monwebservice?WSDL /language:CSgénère la classe proxy. Il n’y a plus qu’à l’instancier et l’utiliser.

  34. XML dans .NETWebServices • Bilan sur les WebServices • Universels • Reposent sur XML (WSDL et SOAP) • Permettent d’utiliser des objets services distribués de manière souple et indépendante des implémentations • Résolvent des problèmes de déploiement • Soutenus par Microsoft, IBM, … • Faciles à utiliser avec .NET • Cours + TP sur XML & WebServiceshttp://www.essisharp.ht.st  Cours  XML & WebServices

  35. Plan • Qui suis-je ? ESSI# ? • Microsoft .NET Framework • XML dans .NET • Conclusion

  36. Questions

  37. N’oubliez pas de visiter le site :http://www.essisharp.ht.st

  38. Chez Microsoft Press MICROSOFT .NET FRAMEWORK C# : 2-84082-864-2 ASP.NET : 2-84082-865-0 2-10006-520-3 2-10006-378-2 • www.microsoft.com/mspress

  39. Au final … Merci de votre attention. Merci à M. FRANCHI.

More Related