我在 .net 中使用 xml 的序列化。我有一个名为 tier 的属性:
public string tier { get; set; }
对象序列化后我想得到的最终结果是:
<settings>
//Where the value is the value of the tier property
<setting name="tier" value="2" />
</settings>
哪些 xml 序列化属性可用于通过一个属性完成此操作?
最佳答案
简单地说,XmlSerializer
不直接支持这种情况。它可以处理:
<foo><tier>2</tier></foo>
或
<foo tier="2"/>
但不是您想要的,除非您将模型大大扭曲变形。
是否可以使用 LINQ-to-XML?
var setting = new Setting { tier = "2" };
var xml = new XElement("settings", new XElement("setting",
new XAttribute("tier", setting.tier)));
不是很自动化的序列化,但它完成了工作。
关于c# - 如何从属性中创建具有属性的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16023431/