繁体   English   中英

JavaScript 数组到 MVC 控制器

[英]JavaScript Array to MVC Controller

我有一个简单的 JavaScript 数组,我试图将它传递给控制器

function SubmitData()
{
    var operationCollection = new Array();

    var test1 = { name: "Bill", age: "55", address: "testing" };
    operationCollection.push(test1);
    var test2 = { name: "Ben", age: "55", address: "testing" };
    operationCollection.push(test2);
    var test3 = { name: "Flo", age: "55", address: "testing" };
    operationCollection.push(test3);


    var dataToPost = JSON.stringify(operationCollection);


    $.ajax({
        type: "POST",
        url: "Home/AddPerson",
        datatype: JSON,
        data: { methodParam: dataToPost },
        traditional: true

    });
}

C# 控制器有一个类

public class newEntry
{

    public string name { get; set; }
    public string age { get; set; }
    public string address { get; set; }

}

和方法

public void AddPerson(List<newEntry> methodParam)
{

    foreach (newEntry item in methodParam)
    {
      string name =  item.age + item.address;

    }
}

当我在调试中运行代码时,传递给控制器​​方法的值始终为 NULL 或 0。我似乎无法正确传递数组。 我在之前的帖子中读到过traditional: true会解决这个问题……但它不适合我。 有没有人有任何想法?

尝试将其添加到您的方法的签名中:

[HttpPost]
public void AddPerson(List<newEntry> methodParam)

同样正如 Gavin 所说,使用data: dataToPost

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM