DataContractSerializer.WriteEndObject Methode

Definitie

Hiermee schrijft u het afsluitende XML-element met behulp van de opgegeven schrijver.

Overloads

Name Description
WriteEndObject(XmlDictionaryWriter)

Hiermee schrijft u het afsluitende XML-element met behulp van een XmlDictionaryWriter.

WriteEndObject(XmlWriter)

Hiermee schrijft u het afsluitende XML-element met behulp van een XmlWriter.

WriteEndObject(XmlDictionaryWriter)

Hiermee schrijft u het afsluitende XML-element met behulp van een 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)

Parameters

writer
XmlDictionaryWriter

De XmlDictionaryWriter gebruikte voor het schrijven van de stream.

Uitzonderingen

Het type dat wordt geserialiseerd, voldoet niet aan regels voor gegevenscontract. Het kenmerk is bijvoorbeeld DataContractAttribute niet toegepast op het type.

Er is een probleem met het schrijven van het exemplaar.

Voorbeelden

In het volgende voorbeeld wordt een object gemaakt om te serialiseren, een exemplaar van de DataContractSerializeren een instantie van de XmlDictionaryWriter klasse. In het voorbeeld worden de WriteStartObject, WriteObjectContenten WriteObjectContent methoden gebruikt om de objectgegevens naar het XML-document te schrijven. Het maken van deze aanroepen is gelijk aan het maken van één aanroep van de WriteObject methode. Een gebruiker kan bijvoorbeeld de aanroepen afzonderlijk uitvoeren om extra XML-kenmerken in te voegen in de XML nadat de methode is WriteStartObject aangeroepen.

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

Van toepassing op

WriteEndObject(XmlWriter)

Hiermee schrijft u het afsluitende XML-element met behulp van een 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)

Parameters

writer
XmlWriter

De XmlWriter gebruikte voor het schrijven van de stream.

Uitzonderingen

Het type dat wordt geserialiseerd, voldoet niet aan regels voor gegevenscontract. Het kenmerk is bijvoorbeeld DataContractAttribute niet toegepast op het type.

Er is een probleem met het schrijven van het exemplaar.

Van toepassing op