输出上的变量数组名称(c#)

时间:2014-02-25 14:55:01

标签: c# serialization variant

我正在寻找在序列化上拥有变量属性名称的正确方法。

示例输出:

{
    "header": {
        "total": 3,
        "page": 1,
        "pagesize": 30
    },
    "cats": [
    ..
    ]
}

{
    "header": {
        "total": 3,
        "page": 1,
        "pagesize": 30
    },
    "dogs": [
    ..
    ]
}

我想让数组的名称变量并在某处以某种方式分配它。如果我正在创建一个猫的页面,我想要有一个名字" cats"在输出上,如果我正在创建一个狗页面,我想要有一个名字"狗"在输出上。我正在使用单个类代表这样一个带有一系列事物(狗或猫)的页面。目前我正在复制该类,唯一的变量是数组的名称,似乎有点不好。

T.I.A。很多

2 个答案:

答案 0 :(得分:0)

编辑2:

如果您有2页,为什么不只是使数组通用,并且调用类似于“数据”并将Cat和Dog页面绑定到数据属性。

<强> Header.cs

public class Header
{
 public int Total { get; set; }
 public int Page { get; set; }
 public int PageSize { get; set; }

}

<强> Page.cs

public class Page
{
 public Header Header { get; set; }
 public object[] Data { get; set; }
}

答案 1 :(得分:0)

这就是我们如何提取变体并修复它:

public class ListView<T> : Dictionary<string, object> where T : IDomainObjectBase
{
    public ListView(DTOList<T> dto, ICallContext context, string name, IEnumerable<object> items)
    {
        this.Add("header", new ViewListHeader(dto.Total, dto.Page, dto.PageSize, context.LocalPath));
        this.Add(name, items.ToList());
    }
}

所以我们现在正在使用字典,很甜蜜!