我目前正在使用 ServiceStack 执行以下操作以将一些 xml 发布回服务器:
<Server xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<UserName>Bob</UserName>
<UserGroups xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:string>History</d3p1:string>
<d3p1:string>Geography</d3p1:string>
</UserGroups>
</Server>
以上工作,但是我如何做到这一点:
<Server xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<UserName>Bob</UserName>
<UserGroups>
<UserGroup>History</UserGroup>
<UserGroup>Geography</UserGroup>
</UserGroups>
</Server>
我努力了:
[CollectionDataContract(ItemName = "UserGroup")]
public partial class ArrayOfStringUserGroup : List<string>
{
public ArrayOfStringUserGroup()
{
}
public ArrayOfStringUserGroup(IEnumerable<string> collection) : base(collection) { }
public ArrayOfStringUserGroup(params string[] args) : base(args) { }
}
我在帖子中的 dto 包含以下内容:
[DataMember(Name = "UserGroups", Order = 3)]
public ArrayOfStringUserGroup UserGroups { get; set; }
但是我将 UserGroups 作为 UserGroupDto 的空数组。