2009-04-30 15 views
18

DataContract öznitelikleriyle işaretlenmiş bir sınıfım var ve bu sınıfın nesnelerinden bir XDocument oluşturmak istiyorum. Bunu yapmanın en iyi yolu nedir?Bir nesneyi XDocument içine nasıl serileştiririm?

Bunu bir XmlDocument yoluyla yapabilirim, ancak bu gereksiz bir adım gibi görünüyor.

doğrudan XDocument içine bir XmlWriter oluşturabilir
+1

ikinci yanıta bakın; Tamamen yanılmış olabilirim –

cevap

37

:

XDocument doc = new XDocument(); 
using (var writer = doc.CreateWriter()) 
{ 
    // write xml into the writer 
    var serializer = new DataContractSerializer(objectToSerialize.GetType()); 
    serializer.WriteObject(writer, objectToSerialize); 
} 
Console.WriteLine(doc.ToString()); 
+2

Doğru; –

+1

hmm cevabımı kaldırıyorum ... kabul edilen bir cevabı silemiyorum gibi görünüyor ... OP yerine bir yorum ekleyeceğim ... –

+1

-1 Doğru yönde büyük adım, ancak soruya tam bir cevap. Gerçek serileştirmeyi XDocument içine alabilir misiniz? – Levitikon

İlgili konular