我正在尝试使用Newtonsoft.Json.JsonConvert将Json反序列化为我的对象。我的 json 是:{"SelectedContentsID[]":"31807,32493,39517","pageSize":"20","SisconContentSubDialogEnum":"0","searchCriteria":"","pageIndex":"1"}
相应的类是:
[DataContract]
public class ContentGetHandlerDTO : ListBaseHandlerDto
{
[DataMember(Name = "SelectedCourseId")]
public int SelectedCourseId { get; set; }
[DataMember]
public System.Collections.Generic.List<int> SelectedContentsID { get; set; }
public ContentGetHandlerDTO() {
this.SelectedContentsID = new System.Collections.Generic.List<int>();
}
}
ListBaseHandlerDto 只是一个包含一些公共属性的类。问题是,反序列化程序方法只是忽略了 int 列表并带来了一个空列表。
您的 JSON 看起来不正确,它应该如下所示:
{
"SelectedContentsID":[31807,32493,39517],
"pageSize":"20",
"SisconContentSubDialogEnum":"0",
"searchCriteria":"",
"pageIndex":"1"
}
具体查看您的所选内容 ID,你有:
"SelectedContentsID[]":"31807,32493,39517"
当 JSON int 数组应如下所示时:
"SelectedContentsID":[31807,32493,39517]
如果你感到困惑,这里有一个很好的参考 - http://www.w3schools.com/json/json_syntax.asp