Gewusst wie: Serialisieren eines Objekts in XML mithilfe von Visual C#

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 815813 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt die Vorgehensweise zum Serialisieren eines Objekts in XML mithilfe von Visual C#. Diese Methode ist nützlich, um den Zustand eines Objekts beizubehalten. Diese Methode empfiehlt sich also auch, um ein Objekt zu klonen, indem das XML wieder in ein neues Objekt deserialisiert wird.



Anforderungen

Die folgende Liste führt die empfohlene Hardware, Software, Netzwerkinfrastruktur und Servicepacks, die erforderlich sind:
  • Microsoft Visual Studio
In diesem Artikel wird davon ausgegangen, dass Sie mit folgenden Themen vertraut sind:
  • Allgemeine Vertrautheit mit XML
  • Allgemeine Vertrautheit mit Visual C#

XML-Serialisierung

Unter Serialisierung wird der Vorgang verstanden, den Zustands eines Objekts zu lesen und in irgendeiner Weise beizubehalten. Das Microsoft.NET Framework enthält leistungsstarke Objekte, die ein Objekt in XML serialisieren kann. Der System.Xml.Serialization -Namespace bietet diese Möglichkeit.

Gehen folgendermaßen Sie vor, um eine Konsolenanwendung zu erstellen, die ein Objekt erstellt, und dann den Zustand in XML serialisiert:
  1. In Visual C# erstellen Sie eine neue Konsole Applicationproject.
  2. Auf der Projekt Menü klicken Sie auf die AddClass , um dem Projekt eine neue Klasse hinzufügen.
  3. Ändern Sie im Dialogfeld Neues Element hinzufügen der Name der Klasse clsPerson.
  4. Klicken Sie auf Hinzufügen. Es wird eine neue Klasse erstellt.

    Hinweis Klicken Sie in Visual Studio .NET 2003 Öffnen.
  5. Fügen Sie folgenden Code nach der Anweisung "Public Class clsPerson" ein
     public   string FirstName;
     public   string MI;
     public   string LastName;
    
  6. Wechseln Sie in das Codefenster für Class1.cs in Visual Studio .NET 2003 oder Program.cs in Visual Studio.
  7. Deklarieren Sie in der void Main -Methode und erstellen Sie eine Instanz der ClsPerson -Klasse:
    clsPerson p = new clsPerson();
  8. Legen Sie die Eigenschaften des ClsPerson -Objekts:
    p.FirstName = "Jeff";
    p.MI = "A";
    p.LastName = "Price";
  9. Die Xml.Serialization Namespace Containsan XmlSerializer -Klasse, die ein Objekt in XML serialisiert. Beim Erstellen von Aninstance XmlSerializer, Sie die gewünschte Klasse serialisieren an seinen Konstruktor übergeben:
    System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
  10. Die Serialize -Methode wird verwendet, um Serializean-Objekts in XML. Serialisieren ist überladen und die Ausgabe kann an einen TextWriter, Streamsoder XMLWriter -Objekt gesendet werden. In diesem Beispiel wird die Ausgabe an die Konsole gesendet:
    x.Serialize(Console.Out,p);
    Console.WriteLine();
    Console.ReadLine();

Vollständige Codeauflistung

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();
   }
}    

Überprüfung

Um zu überprüfen, dass das Projekt funktioniert, drücken Sie STRG + F5, um das Projekt auszuführen. Ein ClsPerson -Objekt erstellt und aufgefüllt mit den Werten, die Sie eingegeben haben. Dieser Zustand wird als XML serialisiert. Das Konsolenfenster zeigt Folgendes an:
<?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>

Problembehandlung bei

Das Xml.Serialization.XmlSerializer -Objekt führt nur flache Serialisierung. Wenn Sie die privaten Variablen ein Objekt oder untergeordnete Objekte serialisieren möchten, müssen Sie die Tiefe Serialisierung verwenden.

Informationsquellen

Weitere Informationen finden Sie auf der folgenden Microsoft Developer Network (MSDN)-Website:
Einführung in die XML-Serialisierung
http://msdn.Microsoft.com/en-us/library/182eeyhh (VS.80).aspx

Eigenschaften

Artikel-ID: 815813 - Geändert am: Donnerstag, 31. Oktober 2013 - Version: 9.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual C# 2008 Express Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2005 Express Edition
Keywords: 
kbsweptvs2008 kbnamespace kbxml kbhowtomaster kbmt KB815813 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 815813
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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