首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将对象序列化为XDocument?

如何将对象序列化为XDocument?
EN

Stack Overflow用户
提问于 2009-04-30 17:28:49
回答 2查看 22.8K关注 0票数 25

我有一个用DataContract属性标记的类,我想从该类的对象创建一个XDocument。做这件事的最好方法是什么?

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-04-30 11:20:54

您可以直接在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());
票数 46
EN

Stack Overflow用户

发布于 2022-01-11 09:48:21

我就是这样做的,它给出了干净的xml,其中没有所有的名称空间,

 XDocument xdoc = new XDocument(new XDeclaration("1.0", "utf-8", "yes"));

        using (var writer = xdoc.CreateWriter())
        {
            System.Xml.Serialization.XmlSerializer x =
            new System.Xml.Serialization.XmlSerializer(objecttoserialize.GetType());

            x.Serialize(writer, objecttoserialize);
        }

        Debug.WriteLine(xdoc.ToString());
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/806095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档