加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c#xml序列化分组子节点中的元素

发布时间:2020-12-16 06:57:41 所属栏目:百科 来源:网络整理
导读:我想将一些类字段序列化为一个组(子节点元素). 例如: [XmlRoot("person",Namespace = "",IsNullable = false)]public class Person{ [XmlElement("male")] public bool Male { get; set; } [XmlElement("street")] public string Street { get; set; } [Xml
我想将一些类字段序列化为一个组(子节点元素).
例如:

[XmlRoot("person",Namespace = "",IsNullable = false)]
public class Person
{
    [XmlElement("male")]
    public bool Male { get; set; }

    [XmlElement("street")]
    public string Street { get; set; }

    [XmlElement("city")]
    public string City { get; set; }
}

这将创建以下XML:

<person>
 <male>true</male>
 <street>Some street</street>
 <city>City</city>
</person>

但是我想将(例如街道和城市分组)成为子元素,而不是创建一个包含这两个属性的额外子类.

<person>
     <male>true</male>
     <address>
       <street>Some street</street>
       <city>City</city>
     </address>
 </person>

解决方法

您可以“手动”序列化,即写入XDocument(甚至是XmlWriter).

这使您可以完全控制格式.使用序列化程序意味着您放弃(大部分)该控件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读