Ajax Post返回类型而不是值c#mvc 4

Nin*_*mma 0 javascript c# ajax jquery asp.net-mvc-4

我有这个问题.

我的功能是这个

$.ajax({
            type: "POST",
            url: "/controller/CreateList",
            contentType: "application/json; charset=utf-8",
            traditional: true,
            data: JSON.stringify(myvar),
            success: function (returnArray) {
            }
.....
Run Code Online (Sandbox Code Playgroud)

在我的控制器中我有这个动作:

public int[] CreateList(List<ERoleCommission> erolecommission){
        List<int> intList= new List<int>();
        ...//populate the List
        return  intList.ToArray();
}
Run Code Online (Sandbox Code Playgroud)

使用debug我看到intList已经填充了正确的值,所以它不是ac#error,在从控制器调用此操作后,调试返回到js函数并且returnArray ="System.Int32 []",它只包含类型.为什么?谢谢

Chr*_*son 5

没有看到你的控制器/动作我只是猜测,但我的第一个猜测是你忘记对数据进行JSON编码,然后再将其作为动作的ActionResult返回.在你的行动中尝试这样的事情:

public JsonResult YourAction() {
    // ... do stuff
    var yourArrayOfData = CreateList(yourListOfData);
    return Json(yourArrayOfData);
}
Run Code Online (Sandbox Code Playgroud)