将查询字符串中的复杂对象列表传递给 WEB API
Pass a list of complex object in query string to WEB API
我有一个 WEB API 方法,它使用 [FromUri]
将复杂类型对象绑定到我的视图模型,在这个视图模型中,我有一个 复杂对象列表 在里面。当我执行 GET 请求时如何填充此列表?
这是我来自WEB的方法API:
[HttpGet]
public HttpResponseMessage ListPaged([FromUri]PaginationReParams parameters)
{
// DO SOMETHING HERE...
}
PaginationReqParams 查看模型
public class PaginationReqParams
{
public PaginationReqParams()
{
this.Filters = new List<FiltersReq>();
}
public List<FiltersReq> Filters { get; set; }
public Int32 Page { get; set; }
public Int32 PageSize { get; set; }
}
过滤器请求 class
public class FiltersReq
{
public String Field { get; set; }
public String Value { get; set; }
public String ComparisonOperator { get; set; }
}
当我将参数传递到我的查询字符串时,如 "page" 它可以正常绑定,但是如何绑定 "Filters" 参数?
像这样传递参数:
?page=1&pagesize=10&filters[0].Field=name&filters[0].Value=aladdin&filters[0].ComparisonOperator=eq&filters[1].Field=age&filters[1].Value=18&filters[1].ComparisonOperator=eq
我有一个 WEB API 方法,它使用 [FromUri]
将复杂类型对象绑定到我的视图模型,在这个视图模型中,我有一个 复杂对象列表 在里面。当我执行 GET 请求时如何填充此列表?
这是我来自WEB的方法API:
[HttpGet]
public HttpResponseMessage ListPaged([FromUri]PaginationReParams parameters)
{
// DO SOMETHING HERE...
}
PaginationReqParams 查看模型
public class PaginationReqParams
{
public PaginationReqParams()
{
this.Filters = new List<FiltersReq>();
}
public List<FiltersReq> Filters { get; set; }
public Int32 Page { get; set; }
public Int32 PageSize { get; set; }
}
过滤器请求 class
public class FiltersReq
{
public String Field { get; set; }
public String Value { get; set; }
public String ComparisonOperator { get; set; }
}
当我将参数传递到我的查询字符串时,如 "page" 它可以正常绑定,但是如何绑定 "Filters" 参数?
像这样传递参数:
?page=1&pagesize=10&filters[0].Field=name&filters[0].Value=aladdin&filters[0].ComparisonOperator=eq&filters[1].Field=age&filters[1].Value=18&filters[1].ComparisonOperator=eq