Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo XmlSerializer.Serialize (Stream, Object)

 

Data di pubblicazione: ottobre 2016

Serializza l'oggetto specificato Object e scrive il documento XML in un file utilizzando l'oggetto specificato Stream.

Spazio dei nomi:   System.Xml.Serialization
Assembly:  System.Xml (in System.Xml.dll)

public void Serialize(
	Stream stream,
	object o
)

Parametri

stream
Type: System.IO.Stream

Il Stream utilizzato per scrivere il documento XML.

o
Type: System.Object

Object da serializzare.

Exception Condition
InvalidOperationException

Si è verificato un errore durante la serializzazione. L'eccezione originale è disponibile tramite il InnerException proprietà.

Il Serialize metodo converte i campi pubblici e le proprietà di lettura/scrittura di un oggetto in XML. Non converte metodi, indicizzatori, campi privati o proprietà di sola lettura. Per serializzare tutti i campi e proprietà di un oggetto, pubblici e privati, utilizzare il BinaryFormatter.

Nel stream parametro, specificare un oggetto che deriva dalla classe astratta Stream (classe). Le classi che derivano da Stream includono:

System_CAPS_noteNota

Il XmlSerializer non è possibile serializzare le operazioni seguenti: le matrici di ArrayList e le matrici di List<T>.

Il seguente esempio serializza un oggetto utilizzando un Stream oggetto.

using System;
using System.IO;
using System.Xml.Serialization;

// This is the class that will be serialized.
public class OrderedItem
{
   public string ItemName;
   public string Description;
   public decimal UnitPrice;
   public int Quantity;
   public decimal LineTotal;

   // A custom method used to calculate price per item.
   public void Calculate()
   {
      LineTotal = UnitPrice * Quantity;
   }
}

public class Test{
   public static void Main(string[] args)
   {
      Test t = new Test();
      // Write a purchase order.
      t.SerializeObject("simple.xml");
   }

   private void SerializeObject(string filename)
   {
      Console.WriteLine("Writing With Stream");

      XmlSerializer serializer = 
      new XmlSerializer(typeof(OrderedItem));
      OrderedItem i = new OrderedItem();
      i.ItemName = "Widget";
      i.Description = "Regular Widget";
      i.Quantity = 10;
      i.UnitPrice = (decimal) 2.30;
      i.Calculate();

      // Create a FileStream to write with.
      Stream writer = new FileStream(filename, FileMode.Create);
      // Serialize the object, and close the TextWriter
      serializer.Serialize(writer, i);
      writer.Close();
   }
}

<?xml version="1.0"?>
 <OrderedItem xmlns:inventory="http://www.cpandl.com" xmlns:money="http://www.cohowinery.com">
   <inventory:ItemName>Widget</inventory:ItemName>
   <inventory:Description>Regular Widget</inventory:Description>
   <money:UnitPrice>2.3</money:UnitPrice>
   <inventory:Quantity>10</inventory:Quantity>
   <money:LineTotal>23</money:LineTotal>
 </OrderedItem>

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 1.1
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: