我有 Parent 班级,其子级列表被声明为 Child 项列表。我希望将此列表序列化为XML,而不必将其包装为root的Parent元素的Children元素。
我尝试使用[SerializeAs(Content = true)]属性,但是IList属性似乎已被忽略。
我的父母和孩子课程:
public class Parent
{
[SerializeAs(Content = true)]
public List<Child> Children { get; set; } = new List<Child>();
}
public class Child
{
public int Id { get; set; }
}
序列化过程的示例:
var parent = new Parent();
for (var i = 0; i < 3; i++)
{
parent.Children.Add(new Child { Id = i + 1 });
}
var serializer = new RestSharp.Serializers.XmlSerializer();
var xml = serializer.Serialize(parent);
期望的是:
<Parent>
<Child>
<Id>1</Id>
</Child>
<Child>
<Id>2</Id>
</Child>
<Child>
<Id>3</Id>
</Child>
</Parent>
我实际上看到的是
<Parent>
<Children>
<Child>
<Id>1</Id>
</Child>
<Child>
<Id>2</Id>
</Child>
<Child>
<Id>3</Id>
</Child>
</Children>
</Parent>