DataContractSerializer.WriteEndObject Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Writes the closing XML element using the specified writer.
Overloads
WriteEndObject(XmlDictionaryWriter) |
Writes the closing XML element using an XmlDictionaryWriter. |
WriteEndObject(XmlWriter) |
Writes the closing XML element using an XmlWriter. |
WriteEndObject(XmlDictionaryWriter)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
Writes the closing XML element using an 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
The XmlDictionaryWriter used to write the stream.
Exceptions
The type being serialized does not conform to data contract rules. For example, the DataContractAttribute attribute has not been applied to the type.
There is a problem with the instance being written.
Examples
The following example creates an object to serialize, an instance of the DataContractSerializer, and an instance of the XmlDictionaryWriter class. The example uses the WriteStartObject, WriteObjectContent, and WriteObjectContent methods to write the object data into the XML document. Making these calls is equivalent to making a single call of the WriteObject method. For example, a user might make the calls separately to insert additional XML attributes into the XML after calling the WriteStartObject method.
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
Applies to
WriteEndObject(XmlWriter)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
Writes the closing XML element using an 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
Exceptions
The type being serialized does not conform to data contract rules. For example, the DataContractAttribute attribute has not been applied to the type.
There is a problem with the instance being written.