DataContractSerializer.WriteEndObject Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zapíše uzavírací element XML pomocí zadaného zapisovače.
Přetížení
WriteEndObject(XmlDictionaryWriter) |
Zapíše uzavírací element XML pomocí XmlDictionaryWriter. |
WriteEndObject(XmlWriter) |
Zapíše uzavírací element XML pomocí XmlWriter. |
WriteEndObject(XmlDictionaryWriter)
Zapíše uzavírací element XML pomocí 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)
Parametry
- writer
- XmlDictionaryWriter
Slouží XmlDictionaryWriter k zápisu datového proudu.
Výjimky
Serializovaný typ neodpovídá pravidlům kontraktu dat. Například atribut DataContractAttribute nebyl použit pro typ.
Došlo k problému s zápisem instance.
Příklady
Následující příklad vytvoří objekt serializovat, instanci DataContractSerializer, a instanci XmlDictionaryWriter třídy. Příklad používá WriteStartObjectmetody , WriteObjectContenta WriteObjectContent k zápisu dat objektu do dokumentu XML. Provedení těchto volání je ekvivalentní provedení jediného WriteObject volání metody. Uživatel může například volat samostatně, aby po volání WriteStartObject metody vložil do XML další atributy XML.
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
Platí pro
WriteEndObject(XmlWriter)
Zapíše uzavírací element XML pomocí 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)
Parametry
Výjimky
Serializovaný typ neodpovídá pravidlům kontraktu dat. Například atribut DataContractAttribute nebyl použit pro typ.
Došlo k problému s zápisem instance.