DataContractSerializer.WriteObjectContent Metoda

Definicja

Zapisuje zawartość XML bez elementu opakowującego przy użyciu określonego składnika zapisywania.

Przeciążenia

Nazwa Opis
WriteObjectContent(XmlDictionaryWriter, Object)

Zapisuje zawartość XML przy użyciu elementu XmlDictionaryWriter.

WriteObjectContent(XmlWriter, Object)

Zapisuje zawartość XML przy użyciu elementu XmlWriter.

WriteObjectContent(XmlDictionaryWriter, Object)

Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs

Zapisuje zawartość XML przy użyciu elementu XmlDictionaryWriter.

public:
 override void WriteObjectContent(System::Xml::XmlDictionaryWriter ^ writer, System::Object ^ graph);
public override void WriteObjectContent(System.Xml.XmlDictionaryWriter writer, object graph);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")]
public override void WriteObjectContent(System.Xml.XmlDictionaryWriter writer, object? graph);
public override void WriteObjectContent(System.Xml.XmlDictionaryWriter writer, object? graph);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")]
public override void WriteObjectContent(System.Xml.XmlDictionaryWriter writer, object? graph);
override this.WriteObjectContent : System.Xml.XmlDictionaryWriter * obj -> unit
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")>]
override this.WriteObjectContent : System.Xml.XmlDictionaryWriter * obj -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")>]
override this.WriteObjectContent : System.Xml.XmlDictionaryWriter * obj -> unit
Public Overrides Sub WriteObjectContent (writer As XmlDictionaryWriter, graph As Object)

Parametry

writer
XmlDictionaryWriter

Element XmlDictionaryWriter używany do zapisywania strumienia.

graph
Object

Obiekt do zapisu w strumieniu.

Atrybuty

Wyjątki

Typ, który jest serializowany, nie jest zgodny z regułami kontraktu danych. Na przykład DataContractAttribute atrybut nie został zastosowany do typu.

Wystąpił problem z zapisywanym wystąpieniem.

Przykłady

Poniższy przykład tworzy obiekt do serializacji, wystąpienia DataContractSerializerklasy i wystąpienia XmlDictionaryWriter klasy . W przykładzie użyto WriteStartObjectmetod , WriteObjectContenti WriteObjectContent do zapisania danych obiektu w dokumencie 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

Dotyczy

WriteObjectContent(XmlWriter, Object)

Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs

Zapisuje zawartość XML przy użyciu elementu XmlWriter.

public:
 override void WriteObjectContent(System::Xml::XmlWriter ^ writer, System::Object ^ graph);
public override void WriteObjectContent(System.Xml.XmlWriter writer, object graph);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")]
public override void WriteObjectContent(System.Xml.XmlWriter writer, object? graph);
public override void WriteObjectContent(System.Xml.XmlWriter writer, object? graph);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")]
public override void WriteObjectContent(System.Xml.XmlWriter writer, object? graph);
override this.WriteObjectContent : System.Xml.XmlWriter * obj -> unit
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")>]
override this.WriteObjectContent : System.Xml.XmlWriter * obj -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Data Contract Serialization and Deserialization might require types that cannot be statically analyzed. Make sure all of the required types are preserved.")>]
override this.WriteObjectContent : System.Xml.XmlWriter * obj -> unit
Public Overrides Sub WriteObjectContent (writer As XmlWriter, graph As Object)

Parametry

writer
XmlWriter

Element XmlWriter używany do zapisywania strumienia.

graph
Object

Obiekt do zapisu w strumieniu.

Atrybuty

Wyjątki

Typ, który jest serializowany, nie jest zgodny z regułami kontraktu danych. Na przykład DataContractAttribute atrybut nie został zastosowany do typu.

Wystąpił problem z zapisywanym wystąpieniem.

Dotyczy