对象数组作为控制器的参数

时间:2013-09-12 06:20:47

标签: c# asp.net-mvc-4

如何将对象数组作为参数发送到MVC Controller?

public class FeedStats
{
    public long FeedId { get; set; }
    public ApiType ApiType { get; set; }
    public long UserId { get; set; }
    public float ReadTime { get; set; }
    public long FeedIndex { get; set; }
    public bool IsWebRead { get; set; }
}

在控制器

[HttpPost]
public HttpResponseMessage UpdateFeedStats(FeedStats[] data)
{
}

当我使用HttpPost使用这些参数发出Postman请求时,数据始终为空。什么问题?

接头:

Content-Type: application/json

{
data: [
   FeedId: 1,
   ApiType: 1,
   UserId: 1,
   ReadTime: 0.65,
   FeedIndex: 1,
   IsWebRead: 1
]
}

1 个答案:

答案 0 :(得分:1)

由于FeedStats[]对象的数组。你需要用花括号括起内部对象:

{
data:[
     {FeedId:1,...},
     {...},
     {...}
     ]
}