Share via


DataContractSerializer.WriteEndObject Metode

Definisi

Menulis elemen XML penutup menggunakan penulis yang ditentukan.

Overload

WriteEndObject(XmlDictionaryWriter)

Menulis elemen XML penutup menggunakan XmlDictionaryWriter.

WriteEndObject(XmlWriter)

Menulis elemen XML penutup menggunakan XmlWriter.

WriteEndObject(XmlDictionaryWriter)

Sumber:
DataContractSerializer.cs
Sumber:
DataContractSerializer.cs
Sumber:
DataContractSerializer.cs

Menulis elemen XML penutup menggunakan XmlDictionaryWriter.

public:
 override void WriteEndObject(System::Xml::XmlDictionaryWriter ^ writer);
public override void WriteEndObject (System.Xml.XmlDictionaryWriter writer);
override this.WriteEndObject : System.Xml.XmlDictionaryWriter -> unit
Public Overrides Sub WriteEndObject (writer As XmlDictionaryWriter)

Parameter

writer
XmlDictionaryWriter

yang XmlDictionaryWriter digunakan untuk menulis aliran.

Pengecualian

Jenis yang diserialisasikan tidak sesuai dengan aturan kontrak data. Misalnya, DataContractAttribute atribut belum diterapkan ke jenis .

Ada masalah dengan instans yang sedang ditulis.

Contoh

Contoh berikut membuat objek untuk diserialisasikan, instans DataContractSerializer, dan instans XmlDictionaryWriter kelas . Contohnya menggunakan WriteStartObjectmetode , WriteObjectContent, dan WriteObjectContent untuk menulis data objek ke dalam dokumen XML. Melakukan panggilan ini setara dengan melakukan satu panggilan WriteObject metode. Misalnya, pengguna mungkin melakukan panggilan secara terpisah untuk menyisipkan atribut XML tambahan ke dalam XML setelah memanggil WriteStartObject metode .

public static void WriteObjectContentInDocument(string path)
{
    // Create the object to serialize.
    Person p = new Person("Lynn", "Tsoflias", 9876);

    // Create the writer object.
    FileStream fs = new FileStream(path, FileMode.Create);
    XmlDictionaryWriter writer =
        XmlDictionaryWriter.CreateTextWriter(fs);

    DataContractSerializer ser =
        new DataContractSerializer(typeof(Person));

    // Use the writer to start a document.
    writer.WriteStartDocument(true);

    // Use the writer to write the root element.
    writer.WriteStartElement("Company");

    // Use the writer to write an element.
    writer.WriteElementString("Name", "Microsoft");

    // Use the serializer to write the start,
    // content, and end data.
    ser.WriteStartObject(writer, p);
    ser.WriteObjectContent(writer, p);
    ser.WriteEndObject(writer);

    // Use the writer to write the end element and
    // the end of the document.
    writer.WriteEndElement();
    writer.WriteEndDocument();

    // Close and release the writer resources.
    writer.Flush();
    fs.Flush();
    fs.Close();
}
Public Shared Sub WriteObjectContentInDocument(ByVal path As String) 
    ' Create the object to serialize.
    Dim p As New Person("Lynn", "Tsoflias", 9876)
    
    ' Create the writer.
    Dim fs As New FileStream(path, FileMode.Create)
    Dim writer As XmlDictionaryWriter = XmlDictionaryWriter.CreateTextWriter(fs)
    
    Dim ser As New DataContractSerializer(GetType(Person))
    
    ' Use the writer to start a document.
    writer.WriteStartDocument(True)
    ' Use the writer to write the root element.
    writer.WriteStartElement("Company")
    ' Use the writer to write an element.
    writer.WriteElementString("Name", "Microsoft")

    ' Use the serializer to write the start,
    ' content, and end data.
    ser.WriteStartObject(writer, p)
    ser.WriteObjectContent(writer, p)
    ser.WriteEndObject(writer)
    
    ' Use the writer to write the end element and
    ' the end of the document.
    writer.WriteEndElement()
    writer.WriteEndDocument()
    
    ' Close and release the writer resources.
    writer.Flush()
    fs.Flush()
    fs.Close()

End Sub

Berlaku untuk

WriteEndObject(XmlWriter)

Sumber:
DataContractSerializer.cs
Sumber:
DataContractSerializer.cs
Sumber:
DataContractSerializer.cs

Menulis elemen XML penutup menggunakan XmlWriter.

public:
 override void WriteEndObject(System::Xml::XmlWriter ^ writer);
public override void WriteEndObject (System.Xml.XmlWriter writer);
override this.WriteEndObject : System.Xml.XmlWriter -> unit
Public Overrides Sub WriteEndObject (writer As XmlWriter)

Parameter

writer
XmlWriter

yang XmlWriter digunakan untuk menulis aliran.

Pengecualian

Jenis yang diserialisasikan tidak sesuai dengan aturan kontrak data. Misalnya, DataContractAttribute atribut belum diterapkan ke jenis .

Ada masalah dengan instans yang sedang ditulis.

Berlaku untuk