相关疑难解决方法(0)

将对象序列化为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
{
  ...
}
Run Code Online (Sandbox Code Playgroud)

这是我认为我可以做的,但它不起作用:

MyObject o = new MyObject();
// Set o properties
string xml = o.ToString();
Run Code Online (Sandbox Code Playgroud)

如何获取此对象的XML表示?

c# xml-serialization

264
推荐指数
13
解决办法
45万
查看次数

将XML属性添加到元素

想要将属性添加到现有xml元素<D_COMMS>,而不是替换现有属性,只需将其添加到开头即可.

这是XML

<OUTPUT version="2.0">
 <RESPONSE>
  <DATA id="17fb13cca6c5463597fdf340c044069f">
    <![CDATA[<ID> jdfkldklfjdkl</ID><D_COMMS>ON this date...</D_COMMS>]]>
  </DATA>
 </RESPONSE>
Run Code Online (Sandbox Code Playgroud)

这个XML是HTTPWebResponse的结果,所以这就是XMl回到我身边时的样子,我需要为D_COMMS元素添加一个值并将其发送回来.这样就可以查找后代DATA并添加就这样.

var addelement = doc.Descendants("DATA").First();
addelement.Add(XElement("D_COMMS","On this date we said"));
Run Code Online (Sandbox Code Playgroud)

c# xml

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×2

xml ×1

xml-serialization ×1