Jak serializovat objekt XML pomocí jazyka Visual C#

Překlady článku Překlady článku
ID článku: 815813 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento podrobný článek popisuje, jak serializovat objekt XML pomocí jazyka Visual C#. Tato metoda je užitečná pro zachování stavu objektu. Tato metoda je také užitečná pro klonování objektu do nového pomocí deserializace.



Požadavky

Následující seznam obsahuje doporučený hardware, software, síťovou infrastrukturu a požadované aktualizace service Pack:
  • Microsoft Visual Studio
Tento článek předpokládá, že jste obeznámeni s následující tématy:
  • Obecná znalost XML
  • Obecné znalosti s Visual C#

Serializace XML

Serializace je proces uchování aktuálního stavu objektu. Rozhraní Microsoft .NET Framework zahrnuje výkonné třídy, které umožňují serializovat libovolný objekt do XML. Tuto funkcionalitu poskytuje jmenný prostor System.Xml.Serialization .

Postupujte podle následujích pokynů pro vytvoření konzolové aplikace, která vytvoří objekt a poté serializuje jeho stav do XML:
  1. V jazyce Visual C# vytvořte nové konzoly Applicationproject.
  2. Na projektu nabídky, klepněte na tlačítko AddClass Chcete-li přidat novou třídu do projektu.
  3. V dialogovém okně Přidat novou položku změňte název třídy clsPerson.
  4. Klepněte na tlačítko Přidat. Nová třída je vytvořena.

    Poznámka: V aplikaci Visual Studio .NET 2003 klepněte na tlačítko Otevřít.
  5. Přidejte následující kód po příkazu clsPerson veřejné třídy
     public   string FirstName;
     public   string MI;
     public   string LastName;
    
  6. Přepněte do okna kód Class1.cs v aplikaci Visual Studio .NET 2003 nebo Program.cs v aplikaci Visual Studio.
  7. V metodě Main void deklarovat a vytvořit instanci třídy clsPerson :
    clsPerson p = new clsPerson();
  8. Nastavte vlastnosti objektu clsPerson :
    p.FirstName = "Jeff";
    p.MI = "A";
    p.LastName = "Price";
  9. Xml.Serialization containsan oboru názvů třídy XmlSerializer , který serializuje objektu do XML. Při vytváření aninstance z XmlSerializer, předá typ chtít abyste třídy serializovat do jeho konstruktoru:
    System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
  10. Serializovatelnou metoda slouží k serializean objektu XML. Serializace je přetížený a můžete odeslat výstup TextWriter, Streamnebo XMLWriter objektu. V tomto příkladu odeslat výstup do konzoly:
    x.Serialize(Console.Out,p);
    Console.WriteLine();
    Console.ReadLine();

Úplný výpis kódu

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

Ověření

Chcete-li ověřit, zda funguje projekt, stiskněte CTRL + F5 ke spuštění projektu. ClsPerson objekt je vytvořen a naplněna hodnotami, které jste zadali. Tento stav je serializován do souboru XML. Okna konzoly se zobrazí následující:
<?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>

Poradce při potížích

Xml.Serialization.XmlSerializer objekt provádí pouze mělké serializace. Pokud chcete serializovat soukromé proměnné objektu nebo podřízených objektů, je nutné použít hluboké serializace.

Odkazy

Pro další informace navštivte následující Web společnosti Microsoft Developer Network (MSDN):
Úvod do XML serializace.
http://msdn.microsoft.com/en-us/library/182eeyhh (VS.80).aspx

Vlastnosti

ID článku: 815813 - Poslední aktualizace: 31. října 2013 - Revize: 12.0
Informace v tomto článku jsou určeny pro produkt:
  • 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
Klíčová slova: 
kbsweptvs2008 kbnamespace kbxml kbhowtomaster kbmt KB815813 KbMtcs
Strojově přeložený článek
DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.
Projděte si také anglickou verzi článku: 815813

Dejte nám zpětnou vazbu

 

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