DataContractSerializer.WriteObjectContent 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用指定的写入器写入 XML 内容,而不写入包装元素。
重载
WriteObjectContent(XmlDictionaryWriter, Object) |
使用 XmlDictionaryWriter 写入 XML 内容。 |
WriteObjectContent(XmlWriter, Object) |
使用 XmlWriter 写入 XML 内容。 |
WriteObjectContent(XmlDictionaryWriter, Object)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
使用 XmlDictionaryWriter 写入 XML 内容。
public:
override void WriteObjectContent(System::Xml::XmlDictionaryWriter ^ writer, System::Object ^ graph);
public override void WriteObjectContent (System.Xml.XmlDictionaryWriter writer, object graph);
public override void WriteObjectContent (System.Xml.XmlDictionaryWriter writer, object? graph);
override this.WriteObjectContent : System.Xml.XmlDictionaryWriter * obj -> unit
Public Overrides Sub WriteObjectContent (writer As XmlDictionaryWriter, graph As Object)
参数
- writer
- XmlDictionaryWriter
用于写入流的 XmlDictionaryWriter。
- graph
- Object
要写入到流的对象。
例外
正在序列化的类型不符合数据协定规则。 例如,DataContractAttribute 特性未应用于该类型。
正在写入的实例出现问题。
示例
下面的示例创建要序列化的对象、DataContractSerializer 的实例以及 XmlDictionaryWriter 类的实例。 该示例使用 WriteStartObject、WriteObjectContent 和 WriteObjectContent 方法将对象数据写入 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
适用于
WriteObjectContent(XmlWriter, Object)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
使用 XmlWriter 写入 XML 内容。
public:
override void WriteObjectContent(System::Xml::XmlWriter ^ writer, System::Object ^ graph);
public override void WriteObjectContent (System.Xml.XmlWriter writer, object graph);
public override void WriteObjectContent (System.Xml.XmlWriter writer, object? graph);
override this.WriteObjectContent : System.Xml.XmlWriter * obj -> unit
Public Overrides Sub WriteObjectContent (writer As XmlWriter, graph As Object)
参数
- graph
- Object
要写入到流的对象。
例外
正在序列化的类型不符合数据协定规则。 例如,DataContractAttribute 特性未应用于该类型。
正在写入的实例出现问题。