如何将对象序列化为XDocument?

Sim*_*eep 19 c# xml-serialization

我有一个标有DataContract属性的类,我想从该类的对象创建一个XDocument.这是最好的方法吗?

我可以通过XmlDocument来实现,但这似乎是一个不必要的步骤.

mar*_*lam 44

您可以直接在XDocument中创建XmlWriter:

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());
Run Code Online (Sandbox Code Playgroud)

  • 这是行不通的。它为我返回了一个空字符串...... (2认同)