SlideShare a Scribd company logo
1 of 5
Download to read offline
Linq to Xml   Auteur: Hoang NGUYEN
Introduction
             Linq to xml (aussi nommé XLinq) est une technologie qui révolutionne la façon de
             travailler avec les documents Xml depuis le framework 3.5.

             Tout devient plus simple et plus fluide grâce à l’utilisation des classes génériques.
             L’exemple suivant permet de comparer l’ancienne méthode (Xml Dom) avec la
             nouvelle méthode (Linq to Xml).

             Exemple

             Nous avons ici un fichier xml tout simple qui présente des catégories de
             bouquins:




17/01/2012        Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com   2
Voici ce que nous devions faire auparavant pour créer ce document Xml :




    Nous nous sommes bien d’accord que cette méthode est verbeuse et ne donne pas
    une vision claire de la structure Xml.
    Avec Linq to Xml, voici ce que ça donne :




17/01/2012   Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com   3
Dans cet exemple de code, nous avons utilisé les 3 classes principales XDocument,
    XElement, XAttribute qui se trouvent dans System.Xml.Linq.dll
    Pour sauvegarder ce document, il suffit d’appeler la méthode Save, comme suit :
        doc.Save("test.xml");

    Quelques exemples avec Linq :
    Pour chercher les bouquins dans la catégorie ayant « id » égal à 1 :
    var res = from c in doc.Descendants("Category")
         where (int) c.Attribute("id") ==1
         select c;
    Pour créer ce document xml grâce à une source qui contient la collection de bouquins
    par exemple : source.Books.
    Voici comment on peut faire:




    N’est-ce pas génial ça ?


17/01/2012    Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com   4
Conclusion

    Linq to Xml propose une approche plus intuitive dans le développement avec Xml car
    il permet d’avoir une meilleure lecture du code.

    La famille de la technologie Linq fournit bien évidement d’autres outils astucieux,
    comme Linq to Entity / Linq to Object / Linq to Sql qui est plutôt expliqué dans le lien
    msdn suivant :
    http://msdn.microsoft.com/fr-fr/library/bb397926.aspx




17/01/2012    Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com   5

More Related Content

Similar to Linq to Xml

Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3DublinCore2b
 
Mandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopMandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopInria
 
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-201518 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015Emmanuelle Morlock
 
Cours partie1 elgarrai zineb
Cours partie1 elgarrai zinebCours partie1 elgarrai zineb
Cours partie1 elgarrai zinebZineb ELGARRAI
 
Language INtegrated Query LINQ
 Language INtegrated QueryLINQ Language INtegrated QueryLINQ
Language INtegrated Query LINQSaid Sadik
 
Pl News Letter Dec07
Pl News Letter Dec07Pl News Letter Dec07
Pl News Letter Dec07robertpluss
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetAmine Chkr
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_finalDuchess France
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_finalagnes_crepet
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Faycel Chaoua
 

Similar to Linq to Xml (12)

Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3
 
Mandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopMandriva Present Task Oriented Desktop
Mandriva Present Task Oriented Desktop
 
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-201518 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
18 02-2015 atelier-pratique-xml-tei-stage-d-ecdotique-2015
 
Cours partie1 elgarrai zineb
Cours partie1 elgarrai zinebCours partie1 elgarrai zineb
Cours partie1 elgarrai zineb
 
Language INtegrated Query LINQ
 Language INtegrated QueryLINQ Language INtegrated QueryLINQ
Language INtegrated Query LINQ
 
Pl News Letter Dec07
Pl News Letter Dec07Pl News Letter Dec07
Pl News Letter Dec07
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception Objet
 
Uml
UmlUml
Uml
 
Chapitre 4 no sql
Chapitre 4 no sqlChapitre 4 no sql
Chapitre 4 no sql
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
 
Design poo togo_jug_final
Design poo togo_jug_finalDesign poo togo_jug_final
Design poo togo_jug_final
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2
 

More from Novencia Groupe

Datalake de l'idée à la plateforme
Datalake de l'idée à la plateformeDatalake de l'idée à la plateforme
Datalake de l'idée à la plateformeNovencia Groupe
 
Ambient intelligence & bigdata
Ambient intelligence & bigdataAmbient intelligence & bigdata
Ambient intelligence & bigdataNovencia Groupe
 
Workshop Fonctionnel - Mecanisme surveillance unique
Workshop Fonctionnel - Mecanisme surveillance uniqueWorkshop Fonctionnel - Mecanisme surveillance unique
Workshop Fonctionnel - Mecanisme surveillance uniqueNovencia Groupe
 
Workshop Fonctionnel - TITRISATION : LE RETOUR
Workshop Fonctionnel - TITRISATION : LE RETOURWorkshop Fonctionnel - TITRISATION : LE RETOUR
Workshop Fonctionnel - TITRISATION : LE RETOURNovencia Groupe
 
L’approche Big Data en finance de marché 2/2
L’approche Big Data en finance de marché 2/2L’approche Big Data en finance de marché 2/2
L’approche Big Data en finance de marché 2/2Novencia Groupe
 
L’approche Big Data en finance de marché 1/2
L’approche Big Data en finance de marché 1/2L’approche Big Data en finance de marché 1/2
L’approche Big Data en finance de marché 1/2Novencia Groupe
 
Les Acronymes financiers de 2014
Les Acronymes financiers de 2014Les Acronymes financiers de 2014
Les Acronymes financiers de 2014Novencia Groupe
 
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...Novencia Groupe
 
Qualité de code, sonar, la dette
Qualité de code, sonar, la detteQualité de code, sonar, la dette
Qualité de code, sonar, la detteNovencia Groupe
 
Euro II : Nouvelle donne 2012
Euro II : Nouvelle donne 2012Euro II : Nouvelle donne 2012
Euro II : Nouvelle donne 2012Novencia Groupe
 
Les systèmes de compensation
Les systèmes de compensationLes systèmes de compensation
Les systèmes de compensationNovencia Groupe
 
Présentation des marché de capitaux
Présentation des marché de capitauxPrésentation des marché de capitaux
Présentation des marché de capitauxNovencia Groupe
 
Nouveautés disponibles dans asp
Nouveautés disponibles dans aspNouveautés disponibles dans asp
Nouveautés disponibles dans aspNovencia Groupe
 
Les 3 modes de concurrence wcf
Les 3 modes de concurrence wcfLes 3 modes de concurrence wcf
Les 3 modes de concurrence wcfNovencia Groupe
 
Introduction à la finance de marché
Introduction à la finance de marchéIntroduction à la finance de marché
Introduction à la finance de marchéNovencia Groupe
 
Utilisation d'une api web avec asp
Utilisation d'une api web avec aspUtilisation d'une api web avec asp
Utilisation d'une api web avec aspNovencia Groupe
 

More from Novencia Groupe (20)

Datalake de l'idée à la plateforme
Datalake de l'idée à la plateformeDatalake de l'idée à la plateforme
Datalake de l'idée à la plateforme
 
Ambient intelligence & bigdata
Ambient intelligence & bigdataAmbient intelligence & bigdata
Ambient intelligence & bigdata
 
Workshop Fonctionnel - Mecanisme surveillance unique
Workshop Fonctionnel - Mecanisme surveillance uniqueWorkshop Fonctionnel - Mecanisme surveillance unique
Workshop Fonctionnel - Mecanisme surveillance unique
 
Workshop Fonctionnel - TITRISATION : LE RETOUR
Workshop Fonctionnel - TITRISATION : LE RETOURWorkshop Fonctionnel - TITRISATION : LE RETOUR
Workshop Fonctionnel - TITRISATION : LE RETOUR
 
L’approche Big Data en finance de marché 2/2
L’approche Big Data en finance de marché 2/2L’approche Big Data en finance de marché 2/2
L’approche Big Data en finance de marché 2/2
 
L’approche Big Data en finance de marché 1/2
L’approche Big Data en finance de marché 1/2L’approche Big Data en finance de marché 1/2
L’approche Big Data en finance de marché 1/2
 
Les Acronymes financiers de 2014
Les Acronymes financiers de 2014Les Acronymes financiers de 2014
Les Acronymes financiers de 2014
 
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
 
Qualité de code, sonar, la dette
Qualité de code, sonar, la detteQualité de code, sonar, la dette
Qualité de code, sonar, la dette
 
Sonar
Sonar Sonar
Sonar
 
Visual studio 2012
Visual studio 2012Visual studio 2012
Visual studio 2012
 
Euro II : Nouvelle donne 2012
Euro II : Nouvelle donne 2012Euro II : Nouvelle donne 2012
Euro II : Nouvelle donne 2012
 
Les systèmes de compensation
Les systèmes de compensationLes systèmes de compensation
Les systèmes de compensation
 
Présentation des marché de capitaux
Présentation des marché de capitauxPrésentation des marché de capitaux
Présentation des marché de capitaux
 
Mobile development
Mobile developmentMobile development
Mobile development
 
Nouveautés disponibles dans asp
Nouveautés disponibles dans aspNouveautés disponibles dans asp
Nouveautés disponibles dans asp
 
La crise de l'euro
La crise de l'euroLa crise de l'euro
La crise de l'euro
 
Les 3 modes de concurrence wcf
Les 3 modes de concurrence wcfLes 3 modes de concurrence wcf
Les 3 modes de concurrence wcf
 
Introduction à la finance de marché
Introduction à la finance de marchéIntroduction à la finance de marché
Introduction à la finance de marché
 
Utilisation d'une api web avec asp
Utilisation d'une api web avec aspUtilisation d'une api web avec asp
Utilisation d'une api web avec asp
 

Linq to Xml

  • 1. Linq to Xml Auteur: Hoang NGUYEN
  • 2. Introduction Linq to xml (aussi nommé XLinq) est une technologie qui révolutionne la façon de travailler avec les documents Xml depuis le framework 3.5. Tout devient plus simple et plus fluide grâce à l’utilisation des classes génériques. L’exemple suivant permet de comparer l’ancienne méthode (Xml Dom) avec la nouvelle méthode (Linq to Xml). Exemple Nous avons ici un fichier xml tout simple qui présente des catégories de bouquins: 17/01/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 2
  • 3. Voici ce que nous devions faire auparavant pour créer ce document Xml : Nous nous sommes bien d’accord que cette méthode est verbeuse et ne donne pas une vision claire de la structure Xml. Avec Linq to Xml, voici ce que ça donne : 17/01/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 3
  • 4. Dans cet exemple de code, nous avons utilisé les 3 classes principales XDocument, XElement, XAttribute qui se trouvent dans System.Xml.Linq.dll Pour sauvegarder ce document, il suffit d’appeler la méthode Save, comme suit : doc.Save("test.xml"); Quelques exemples avec Linq : Pour chercher les bouquins dans la catégorie ayant « id » égal à 1 : var res = from c in doc.Descendants("Category") where (int) c.Attribute("id") ==1 select c; Pour créer ce document xml grâce à une source qui contient la collection de bouquins par exemple : source.Books. Voici comment on peut faire: N’est-ce pas génial ça ? 17/01/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 4
  • 5. Conclusion Linq to Xml propose une approche plus intuitive dans le développement avec Xml car il permet d’avoir une meilleure lecture du code. La famille de la technologie Linq fournit bien évidement d’autres outils astucieux, comme Linq to Entity / Linq to Object / Linq to Sql qui est plutôt expliqué dans le lien msdn suivant : http://msdn.microsoft.com/fr-fr/library/bb397926.aspx 17/01/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 5