Teď jste offline a čekáte, až se znova připojí internet.

Jak serializovat objekt XML pomocí jazyka Visual C#

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
Microsoft Visual Basic .NET verzi tohoto článku naleznete v tématu 315703 .
Tento článek se týká následujících oborů názvů knihovny tříd rozhraní.NET Framework společnosti Microsoft:
  • System.Xml
  • System.Xml.Serialization

V TOMTO ÚKOLU

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.

zpět na horní

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#
zpět na horní

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();
zpět na horní

Ú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();   }}    
zpět na horní

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>		
zpět na horní

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.

zpět na horní
Odkazy
Pro další informace navštivte následující Web společnosti Microsoft Developer Network (MSDN):zpět na horní

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 815813 - Poslední kontrola: 10/31/2013 07:13:00 - Revize: 12.0

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

  • kbsweptvs2008 kbnamespace kbxml kbhowtomaster kbmt KB815813 KbMtcs
Váš názor
/html>=">