NetDataContractSerializer.WriteStartObject 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 작성기를 사용하여 열기 XML 요소를 씁니다.
오버로드
WriteStartObject(XmlDictionaryWriter, Object) |
XmlDictionaryWriter를 사용하여 열기 XML 요소를 씁니다. |
WriteStartObject(XmlWriter, Object) |
XmlWriter를 사용하여 열기 XML 요소를 씁니다. |
WriteStartObject(XmlDictionaryWriter, Object)
XmlDictionaryWriter를 사용하여 열기 XML 요소를 씁니다.
public:
override void WriteStartObject(System::Xml::XmlDictionaryWriter ^ writer, System::Object ^ graph);
public override void WriteStartObject (System.Xml.XmlDictionaryWriter writer, object graph);
override this.WriteStartObject : System.Xml.XmlDictionaryWriter * obj -> unit
Public Overrides Sub WriteStartObject (writer As XmlDictionaryWriter, graph As Object)
매개 변수
- writer
- XmlDictionaryWriter
XML 요소를 쓰는 데 사용되는 XmlDictionaryWriter입니다.
- graph
- Object
serialize할 개체입니다. 이 루트 개체의 모든 자식 개체는 자동으로 serialize됩니다.
예외
serialize하고 있는 형식이 데이터 계약 규칙을 따르지 않는 경우. DataContractAttribute 특성이 형식에 적용되지 않은 경우를 예로 들 수 있습니다.
serialize하고 있는 인스턴스에 문제가 있는 경우.
serialize할 최대 개체 수가 초과된 경우. MaxItemsInObjectGraph 속성을 확인합니다.
예제
다음 예제에서는 serialize할 개체, NetDataContractSerializer의 인스턴스 및 XmlDictionaryWriter 클래스의 인스턴스를 작성합니다. 이 예제에서는 WriteStartObject, WriteObjectContent, WriteEndObject 메서드를 사용하여 XML 문서에 개체를 씁니다.
public sealed class ShowWriteStartObject
{
public static void WriteObjectData(string path)
{
// Create the object to serialize.
Person p = new Person("Lynn", "Tsoflias", 9876);
// Create the writer.
FileStream fs = new FileStream(path, FileMode.Create);
XmlDictionaryWriter writer =
XmlDictionaryWriter.CreateTextWriter(fs);
NetDataContractSerializer ser =
new NetDataContractSerializer();
// Use the writer to start a document.
writer.WriteStartDocument(true);
// Use the serializer to write the start of the
// object data. Use it again to write the object
// data.
ser.WriteStartObject(writer, p);
ser.WriteObjectContent(writer, p);
// Use the serializer to write the end of the
// object data. Then use the writer to write the end
// of the document.
ser.WriteEndObject(writer);
writer.WriteEndDocument();
Console.WriteLine("Done");
// Close and release the writer resources.
writer.Flush();
fs.Flush();
fs.Close();
}
NotInheritable Public Class ShowWriteStartObject
Public Shared Sub WriteObjectData(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 System.Runtime.Serialization.NetDataContractSerializer()
' Use the writer to start a document.
writer.WriteStartDocument(True)
' Use the serializer to write the start of the
' object data. Use it again to write the object
' data.
ser.WriteStartObject(writer, p)
writer.WriteStartAttribute("MyAttribute")
writer.WriteString("My Text")
writer.WriteEndAttribute()
ser.WriteObjectContent(writer, p)
' Use the serializer to write the end of the
' object data. Then use the writer to write the end
' of the document.
ser.WriteEndObject(writer)
writer.WriteEndDocument()
Console.WriteLine("Done")
' Close and release the writer resources.
writer.Flush()
fs.Flush()
fs.Close()
End Sub
적용 대상
WriteStartObject(XmlWriter, Object)
XmlWriter를 사용하여 열기 XML 요소를 씁니다.
public:
override void WriteStartObject(System::Xml::XmlWriter ^ writer, System::Object ^ graph);
public override void WriteStartObject (System.Xml.XmlWriter writer, object graph);
override this.WriteStartObject : System.Xml.XmlWriter * obj -> unit
Public Overrides Sub WriteStartObject (writer As XmlWriter, graph As Object)
매개 변수
- writer
- XmlWriter
XML 요소를 쓰는 데 사용되는 XmlDictionaryWriter입니다.
- graph
- Object
serialize할 개체입니다. 이 루트 개체의 모든 자식 개체는 자동으로 serialize됩니다.
예외
serialize하고 있는 형식이 데이터 계약 규칙을 따르지 않는 경우. DataContractAttribute 특성이 형식에 적용되지 않은 경우를 예로 들 수 있습니다.
serialize하고 있는 인스턴스에 문제가 있는 경우.
serialize할 최대 개체 수가 초과된 경우. MaxItemsInObjectGraph 속성을 확인합니다.
적용 대상
.NET