Come serializzare un oggetto in XML utilizzando C#

Traduzione articoli Traduzione articoli
Identificativo articolo: 815813 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene descritto come serializzare un oggetto in XML utilizzando C#. Questo metodo è utile per mantenere lo stato di un oggetto. Questo metodo è inoltre utile per la clonazione di un oggetto da de-serializing il codice XML a un nuovo oggetto.



Requisiti

Nell'elenco seguente sono indicati hardware, software, infrastruttura di rete e i service pack necessari:
  • Microsoft Visual Studio
In questo articolo si presume la conoscenza dei seguenti argomenti:
  • Conoscenza generale di XML
  • Conoscenza generale con Visual C#

Serializzazione XML

La serializzazione è il processo di richiede lo stato di un oggetto e il mantenimento, in alcune modalità. Microsoft .NET Framework contiene gli oggetti potenti possono serializzare un oggetto in XML. Lo spazio dei nomi System.Xml.Serialization fornisce questa funzionalità.

Attenersi alla seguente procedura per creare un'applicazione console che crea un oggetto e quindi serializza lo stato in formato XML:
  1. In Visual C#, creare una nuova applicazione di console progetto.
  2. Scegliere dal menu progetto , Aggiungi classe per aggiungere una nuova classe al progetto.
  3. Nella finestra di dialogo Aggiungi nuovo elemento , modificare il nome della classe per clsPerson .
  4. Fare clic su Aggiungi . Viene creata una nuova classe.

    Nota In Visual Studio .NET 2003, fare clic su Apri .
  5. Aggiungere il codice seguente dopo il public class clsPerson istruzione
     public   string FirstName;
     public   string MI;
     public   string LastName;
    
  6. Passare alla finestra del codice per Program.cs in Visual Studio oppure per Class1.cs in Visual Studio .NET 2003.
  7. Nel metodo Main void, dichiarare e creare un'istanza della classe clsPerson :
    clsPerson p = new clsPerson();
  8. Impostare le proprietà dell'oggetto clsPerson :
    p.FirstName = "Jeff";
    p.MI = "A";
    p.LastName = "Price";
  9. Lo spazio dei nomi Xml.Serialization contiene una classe di XmlSerializer che serializza un oggetto in XML. Quando si crea un'istanza di XmlSerializer , si passa il tipo della classe che si desidera serializzare nel relativo costruttore:
    System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
  10. Il metodo Serialize viene utilizzato per serializzare un oggetto in XML. Serializzare overload che può inviare l'output a un oggetto TextWriter , flusso o XMLWriter . In questo esempio è inviare l'output alla console:
    x.Serialize(Console.Out,p);
    Console.WriteLine();
    Console.ReadLine();

Elenco completo del codice

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

Verifica

Per verificare che il progetto funzioni, premere CTRL + F5 per eseguire il progetto. Un oggetto clsPerson creato e inserito i valori immessi. Questo stato viene serializzato come XML. Nella finestra di console verrà visualizzato il seguente:
<?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>

Risoluzione dei problemi

L'oggetto di Xml.Serialization.XmlSerializer esegue solo da serializzazione dei riferimenti. Se si desidera serializzare le variabili private di oggetti di un oggetto o elemento figlio, è necessario utilizzare la serializzazione completa.

Riferimenti

Per ulteriori informazioni, visitare il seguente sito Web Microsoft Developer Network (MSDN):
Introduzione a XML Serialization
http://msdn.microsoft.com/en-us/library/182eeyhh(VS.80).aspx

Proprietà

Identificativo articolo: 815813 - Ultima modifica: lunedì 21 luglio 2008 - Revisione: 4.1
Le informazioni in questo articolo si applicano a:
  • 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
Chiavi: 
kbmt kbsweptvs2008 kbnamespace kbxml kbhowtomaster KB815813 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 815813
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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