DataContractSerializer.WriteEndObject Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Выполняет запись закрывающего XML-элемента с помощью указанного модуля записи.
Перегрузки
WriteEndObject(XmlDictionaryWriter) |
Выполняет запись закрывающего XML-элемента с помощью средства записи XmlDictionaryWriter. |
WriteEndObject(XmlWriter) |
Выполняет запись закрывающего XML-элемента с помощью средства записи XmlWriter. |
WriteEndObject(XmlDictionaryWriter)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Выполняет запись закрывающего XML-элемента с помощью средства записи 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)
Параметры
- writer
- XmlDictionaryWriter
Объект XmlDictionaryWriter, используемый для записи потока.
Исключения
Сериализуемый тип не соответствует правилам контракта данных. Например, к этому типу не применен атрибут DataContractAttribute.
Возникла проблема с записываемым экземпляром.
Примеры
В следующем примере создается объект для сериализации, экземпляр класса DataContractSerializer и экземпляр класса XmlDictionaryWriter. В этом примере для записи данных объекта в XML-документ используются методы WriteStartObject, WriteObjectContent и WriteObjectContent. Вызов всех этих методов аналогичен вызову метода WriteObject. Например, пользователь может вызвать эти методы по отдельности, чтобы вставить дополнительные атрибуты XML в XML после вызова метода WriteStartObject.
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
Применяется к
WriteEndObject(XmlWriter)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Выполняет запись закрывающего XML-элемента с помощью средства записи 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)
Параметры
Исключения
Сериализуемый тип не соответствует правилам контракта данных. Например, к этому типу не применен атрибут DataContractAttribute.
Возникла проблема с записываемым экземпляром.