ASP.NET MVC 3控制器无法接收json 2D数组

ASP.NET MVC 3控制器无法接收json 2D数组,json,asp.net-mvc-3,Json,Asp.net Mvc 3,不确定它是否是一个bug。我按照一些教程将Json 2D数组发布到ASP.NET MVC控制器,当数组的第一个元素不为空时,它可以正常工作,否则会失败 示例:如果我的json obj是 var obj = { ItemsArr: [[1, 2],[]] // first element is an array with a few elements }; 控制器将正确接收数据。但是,如果2D数组的第一个元素是空数组,如: var obj = { ItemsArr: [[],

不确定它是否是一个bug。我按照一些教程将Json 2D数组发布到ASP.NET MVC控制器,当数组的第一个元素不为空时,它可以正常工作,否则会失败

示例:如果我的json obj是

var obj = {
   ItemsArr: [[1, 2],[]]   // first element is an array with a few elements
};
控制器将正确接收数据。但是,如果2D数组的第一个元素是空数组,如:

var obj = {
    ItemsArr: [[], [1, 2]]  // first element is an EMPTY array
};
控制器将接收空值

我使用jquery.json-2.3.min.js将objs转换为json字符串。 转换后的字符串看起来很好:

{"ItemsArr":[[1,2],[]]}
{"ItemsArr":[[],[1,2]]}
型号代码:

public class Model
{
    public List<string[]> ItemsArr {get;set;}
}

public MyController : Controller
{
    public ActionResult DoSomething( Model model )
    {  ...
    }
}

我建议在服务器端传递一个对象数组并创建一个具有相同属性的类,然后asp.net MVC将在JS端自动将该数组转换为列表或作为动作签名一部分的任何其他IEnumerable

{"ItemsArr":[null,[1,2]]}