DataContractSerializer.WriteObjectContent メソッド

定義

指定したライターを使用して、折り返し要素を含まない XML コンテンツを書き込みます。

オーバーロード

名前 説明
WriteObjectContent(XmlDictionaryWriter, Object)

XmlDictionaryWriterを使用して XML コンテンツを書き込みます。

WriteObjectContent(XmlWriter, Object)

XmlWriterを使用して XML コンテンツを書き込みます。

WriteObjectContent(XmlDictionaryWriter, Object)

XmlDictionaryWriterを使用して XML コンテンツを書き込みます。

public:
 override void WriteObjectContent(System::Xml::XmlDictionaryWriter ^ writer, System::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 クラスのインスタンスを作成します。 この例では、 WriteStartObjectWriteObjectContent、および 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)

XmlWriterを使用して XML コンテンツを書き込みます。

public:
 override void WriteObjectContent(System::Xml::XmlWriter ^ writer, System::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)

パラメーター

writer
XmlWriter

ストリームの書き込みに使用する XmlWriter

graph
Object

ストリームに書き込むオブジェクト。

例外

シリアル化される型は、データ コントラクト規則に準拠していません。 たとえば、 DataContractAttribute 属性が型に適用されていません。

インスタンスの書き込み中に問題があります。

適用対象