INFO : programme pour la sérialisation XML dans le .NET Framework

Traductions disponibles Traductions disponibles
Numéro d'article: 314150 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article fournit un programme pour en savoir plus et de maître de sérialisation et désérialisation XML avec .NET Framework (espace de noms System.XML ).

Articles d'introduction proposent des liens aux informations utiles, y compris la documentation en ligne, articles de la base de connaissances Microsoft et blancs Microsoft, pour vous aider à apprendre sur un produit Microsoft ou de la technologie. Microsoft Base de connaissances Comment faire pour articles et des procédures pas à pas fournissent des instructions étape par étape pour effectuer les tâches spécifiques. Fichiers d'exemples de démarrage rapide sont des programmes prédéfinis qui illustrent une technique.

Vue d'ensemble

Sérialisation est le processus de conversion d'un objet dans un formulaire peut être transporté facilement. Par exemple, vous pouvez sérialiser un objet et transport sur Internet via HTTP entre un client et un serveur. À l'autre extrémité désérialisation reconstruit l'objet dans le flux de données.

Le .NET Framework comporte deux technologies sérialisation :
  • sérialisation binaire préserve la fidélité du type, qui est utile pour conserver l'état d'un objet entre différents appels d'une application. Par exemple, vous pouvez partager un objet entre différentes applications par sérialisation dans le Presse-papiers. Par exemple, vous pouvez sérialiser un objet à un flux, sur un disque, dans la mémoire ou sur le réseau. Accès distant utilise sérialisation pour transmettre des objets « par valeur » d'un domaine d'ordinateur ou une application à un autre.
  • sérialisation XML sérialise uniquement le champs publics et les valeurs de propriété d'un objet dans un flux XML. Sérialisation XML n'inclut pas les informations de type. Par exemple, si vous disposez d'un objet de carnet de qui existe dans l'espace de noms de la bibliothèque , n'est il aucune garantie que qu'il va être désérialisée dans un objet du même type.
Il est important de comprendre la différence entre ces deux technologies. Sérialisation XML ne convertit pas méthodes, des indexeurs, des champs privés ou des propriétés en lecture seule (sauf les collections en lecture seule). Pour sérialiser tous les champs publiques et privées et les propriétés d'un objet, utilisez le BinaryFormatter au lieu de sérialisation XML.

Les liens suivants fournissent vue d'ensemble d'informations sur de sérialisation XML et la désérialisation de Visual Studio .NET :
Présentation de la sérialisation XML
http://msdn2.microsoft.com/en-us/library/182eeyhh(vs.71).aspx

XML et la sérialisation SOAP
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconserialization.asp

Architecture de la sérialisation XML

L'espace de noms System.XML.Serialization contient les classes qui sont utilisées pour sérialiser des objets dans les documents de format XML ou des flux de données.

La classe centrale dans l'espace de noms est la classe XmlSerializer . Pour utiliser cette classe, utiliser le constructeur du XmlSerializer pour créer une instance de la classe en utilisant le type de l'objet pour sérialiser. Après avoir créé un XmlSerializer , créer une instance de l'objet pour sérialiser. Vous devez également créer un objet à écrire le fichier dans un document ou un flux, comme un flux , une TextWriter ou un XmlWriter . Vous pouvez ensuite appeler la méthode Serialize afin de convertir l'objet à un document XML.

Permettant de désérialiser un objet à partir d'un document XML, créer un objet approprié pour lire le document ou un flux de données (à nouveau un flux , une TextWriter ou un XmlWriter ). Appeler la méthode Deserialize lors de la conversion de l'objet du type de l'objet original a été sérialisé qui en résulte.

Pour contrôler la sérialisation plus, l'espace de noms System.XML.Serialization fournit plusieurs classes d'attributs pouvant être appliquées à des membres d'une classe. Par exemple, si une classe contient un membre qui va être sérialisé en tant qu'un élément XML, vous pouvez appliquer l'attribut XmlElementAttribute au membre. Lors de l'application l'attribut, vous pouvez spécifier des détails comme le nom réel de l'élément XML en utilisant la propriété Nom_élément .

Le lien suivant fournit architecture d'informations (interne) sur sérialisation XML et de désérialisation :
Classe de sérialisation XML
http://msdn2.microsoft.com/en-us/library/system.xml.serialization.xmlserializer(vs.71).aspx

Hiérarchie de System.XML.Serialization
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemxmlserializationhierarchy.asp

Concepts clés et quickstarts

Les liens suivants vous guideront à la documentation sur la clé XML concepts de sérialisation et de désérialisation et didacticiels de Démarrages rapides.
La sérialisation XML avec les services Web XML
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconxmlserializationwithwebservices.asp

Comment je lecture/écriture objets au format XML ?
http://samples.gotdotnet.com/quickstart/aspplus/default.aspx?url=/quickstart/howto/doc/XMLSerialization/RWObjFromXML.aspx

Remplacement de la sérialisation XML
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconoverridingserializationofclasseswithxmlattributeoverridesclass.asp

Exemples .NET - Comment faire : la sérialisation XML
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpqstart/html/cpsmpnetsamples-howtoxmlserialization.asp
Le lien « Exemples de sérialisation XML » présente plusieurs exemples de code qui illustrent la sérialisation XML, notamment les suivantes :
  • Sérialisation d'un DataSet
  • Sérialisation d'un XmlElement et XmlNode
  • Une classe contenant un champ Renvoi d'un objet complexe avec numéro de série
  • Un groupe d'objets avec numéro de série
  • Sérialisation d'une classe qui Implements l'interface ICollection
  • Un exemple de commande d'achat
Exemples de sérialisation XML
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconanexampleofxmlserializationwithxmlserializer.asp
Le lien « contrôle XML sérialisation à l'aide attributs » aborde les rubriques suivantes avec des exemples de code :
  • Contrôle de la sérialisation de groupe
  • Sérialisation des classes dérivées
  • Sérialisation d'un groupe comme une séquence d'éléments
  • Sérialisation d'une liste de tableaux
  • Contrôle de la sérialisation des classes à l'aide d'attribut XmlRootAttribute et XmlTypeAttribute
  • Empêche la sérialisation avec la XmlIgnoreAttribute
Contrôle de la sérialisation XML à l'aide d'attributs
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconcontrollingserializationbyxmlserializerwithattributes.asp

Articles de la base de connaissances

Microsoft Base de connaissances articles Comment faire fournissent des instructions étape par étape pour effectuer une tâche spécifique.
315703 Comment faire pour sérialiser un objet au format XML à l'aide de Visual Basic .NET
316730 Comment faire pour sérialiser et désérialiser XML dans Visual Basic .NET
Vous pouvez également exécuter des transformations XSL (XSLT), requête et modifier des données XML via le modèle DOM et sérialiser ou désérialiser les données XML en utilisant les classes System.XML dans .NET Framework. Pour plus d'informations, voir l'article suivant de la base de connaissances :
313651 Introduction de XML dans le .NET Framework

Procédures pas à pas

Procédures pas à pas fournissent des mini-didacticiels qui vous guideront dans certains scénarios de développement d'application typique qui utilisent de sérialisation XML et de désérialisation. Le lien ci-dessous vous amène aux documents de présentation.
À l'aide schéma et la sérialisation pour la logique de système tirer parti des
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnexxml/html/xml04162001.asp

Résolution des problèmes

Si vous rencontrez des problèmes et souhaitez que l'assistance, le meilleur endroit pour démarrer est sur le site Web de services de support technique Microsoft (PSS) :
http://support.microsoft.com
Vous disposez de plusieurs options pour trouver les réponses à vos questions. Vous pouvez recherche dans la Base de connaissances Microsoft, publier vos questions ou partager vos expériences sur les groupes de discussion Microsoft, obtenir les derniers service packs et les actualités sur un produit spécifique ou contacter le support technique Microsoft.

Propriétés

Numéro d'article: 314150 - Dernière mise à jour: vendredi 18 mai 2007 - Version: 3.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft .NET Framework Class Libraries 1.0
  • Microsoft .NET Framework Class Libraries 1.1
Mots-clés : 
kbmt kbarttyperoadmap kbinfo KB314150 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 314150
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com