将对象序列化为xml

将对象序列化为xml

我继承了一个C#类。我已经成功地“建造”了这个物体。但我需要将对象序列化为XML。有什么简单的方法吗?


类似乎已经设置为序列化,但我不确定如何获得XML表示。我的类定义如下:


[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]

[System.SerializableAttribute()]

[System.Diagnostics.DebuggerStepThroughAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]

[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.domain.com/test")]

[System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.domain.com/test", IsNullable = false)]

public partial class MyObject

{

  ...

}

以下是我认为我能做的,但它不起作用:


MyObject o = new MyObject();

// Set o properties

string xml = o.ToString();

如何获得该对象的XML表示?


慕码人2483693
浏览 504回答 3
3回答

有只小跳蛙

您必须使用XmlSeriizer进行XML序列化。下面是一个示例片段。 XmlSerializer xsSubmit = new XmlSerializer(typeof(MyObject));  var subReq = new MyObject();  var xml = "";  using(var sww = new StringWriter())  {      using(XmlWriter writer = XmlWriter.Create(sww))      {          xsSubmit.Serialize(writer, subReq);          xml = sww.ToString(); // Your XML      }  }
打开App,查看更多内容
随时随地看视频慕课网APP