Τρόπος σειριοποίηση του αντικειμένου σε XML χρησιμοποιώντας Visual C#

Για την Microsoft Visual Basic .NET έκδοση αυτού του άρθρου, ανατρέξτε στην ενότητα
315703 .
Αυτό το άρθρο αναφέρεται από τα παρακάτω πεδία ονομάτων βιβλιοθήκη κλάσης του Microsoft .NET Framework:
  • System.Xml
  • System.Xml.Serialization

ΣΕ ΑΥΤΉΝ ΤΗΝ ΕΡΓΑΣΊΑ

Σύνοψη

Αυτό το άρθρο βήμα προς βήμα περιγράφει τον τρόπο η σειριοποίηση ενός αντικειμένου σε XML χρησιμοποιώντας Visual C#. Αυτή η μέθοδος είναι χρήσιμη για να συνεχίζεται η κατάσταση ενός αντικειμένου. Αυτή η μέθοδος είναι επίσης χρήσιμη για κλωνοποίηση ενός αντικειμένου κατά την αποσειριοποίηση του XML σε ένα νέο αντικείμενο.

Επιστροφή στην κορυφή

Απαιτήσεις

Η ακόλουθη λίστα περιγράφει το υλικού που συνιστώνται, λογισμικό, υποδομή δικτύου και τα service pack που απαιτούνται:
  • Microsoft Visual Studio
Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τα ακόλουθα θέματα:
  • Γενικά εξοικείωση με XML
  • Γενικά εξοικείωση με Visual C#
Επιστροφή στην κορυφή

Σειριοποίησης XML

Η σειριοποίηση είναι η διαδικασία με την κατάσταση ενός αντικειμένου και συνεχίζεται το με κάποιο τρόπο. Το Microsoft .NET Framework περιλαμβάνει ισχυρά αντικείμενα, τα οποία μπορεί να σειριοποιήσει οποιουδήποτε αντικειμένου σε XML. Ο χώρος ονομάτων System.Xml.Serialization παρέχει αυτή τη δυνατότητα.

Ακολουθήστε αυτά τα βήματα για τη δημιουργία μιας εφαρμογής κονσόλας που δημιουργεί ένα αντικείμενο και στη συνέχεια τοποθετεί σειριακά του κατάσταση σε XML:
  1. Στη Visual C#, δημιουργήστε ένα νέο έργο εφαρμογής κονσόλας.
  2. Στο μενού ' έργο ', κάντε κλικ στο κουμπί Προσθήκη κλάσης για να προσθέσετε μια νέα κλάση στο έργο.
  3. Στο πλαίσιο διαλόγου " Προσθήκη νέου στοιχείου ", αλλάξτε το όνομα της κλάσης για clsPerson.
  4. Κάντε κλικ στο κουμπί Προσθήκη. Δημιουργείται μια νέα κλάση.

    Σημείωση Στο Visual Studio .NET 2003, κάντε κλικ στο " Άνοιγμα".
  5. Προσθέστε τον ακόλουθο κώδικα μετά τη δήλωση clsPerson δημόσια κλάσης
     public   string FirstName; public   string MI;
    public string LastName;

  6. Μεταβείτε στο παράθυρο κώδικα για Program.cs στο Visual Studio ή Class1.cs στο Visual Studio .NET 2003.
  7. Στη μέθοδο Main void, να δηλώσετε και να δημιουργήσετε μια παρουσία της κλάσης clsPerson :
    clsPerson p = new clsPerson();
  8. Ορίστε τις ιδιότητες του αντικειμένου clsPerson :
    p.FirstName = "Jeff";p.MI = "A";
    p.LastName = "Price";
  9. Ο χώρος ονομάτων Xml.Serialization περιέχει μια κλάση XmlSerializer που τοποθετεί σειριακά ενός αντικειμένου σε XML. Όταν δημιουργείτε μια παρουσία του XmlSerializer, περάσει τον τύπο της κλάσης που θέλετε να τη σειριοποίηση σε η κατασκευή:
    System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
  10. Η μέθοδος Serialize χρησιμοποιείται για τη σειριοποίηση ενός αντικειμένου σε XML. Η σειριοποίηση είναι υπερφορτωμένος και να στέλνουν την έξοδο σε μια TextWriter, ροή, ή XMLWriter το αντικείμενο. Σε αυτό το παράδειγμα, μπορείτε να στείλετε τα δεδομένα εξόδου της κονσόλας:
    x.Serialize(Console.Out,p);Console.WriteLine();
    Console.ReadLine();
Επιστροφή στην κορυφή

Ολοκληρώσετε την καταχώρηση κωδικού

using System;
public class clsPerson
{
public string FirstName;
public string MI;
public string LastName;
}

class class1
{
static void Main(string[] args)
{
clsPerson p=new clsPerson();
p.FirstName = "Jeff";
p.MI = "A";
p.LastName = "Price";
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
x.Serialize(Console.Out, p);
Console.WriteLine();
Console.ReadLine();
}
}

Επιστροφή στην κορυφή

Επαλήθευση

Για να βεβαιωθείτε ότι λειτουργεί το έργο σας, πιέστε το συνδυασμό πλήκτρων CTRL + F5 για να εκτελέσετε το έργο. Ένα clsPerson αντικείμενο δημιουργείται και συμπληρώνεται με τις τιμές που έχετε εισαγάγει. Αυτή η κατάσταση είναι σειριοποιηθεί σε XML. Το παράθυρο της κονσόλας εμφανίζει τα εξής:
<?xml version="1.0" encoding="IBM437"?> <clsPerson xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3
.org/2001/XMLSchema">
<FirstName>Jeff</FirstName>
<MI>A</MI>
<LastName>Price</LastName>
</clsPerson>

Επιστροφή στην κορυφή

Αντιμετώπιση προβλημάτων

Το αντικείμενο Xml.Serialization.XmlSerializer εκτελεί μόνο απλό σειριοποίησης. Εάν θέλετε επίσης να τεθεί σε αλληλουχία των ιδιωτικών μεταβλητών ενός αντικειμένου ή θυγατρικά αντικείμενα, πρέπει να χρησιμοποιήσετε βαθύ σειριοποίησης.

Επιστροφή στην κορυφή

Αναφορές

Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία του Microsoft Developer Network (MSDN) στο Web:
Παρουσιάζουμε σειριοποίησης XML
http://msdn.microsoft.com/en-us/library/182eeyhh(VS.80).aspx
Επιστροφή στην κορυφή
Ιδιότητες

Αναγνωριστικό άρθρου: 815813 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια