gpt4 book ai didi

javascript - 使用 Ajax 将 JS 对象发送到 C# Controller

转载 作者:行者123 更新时间:2023-11-27 23:44:14 25 4
gpt4 key购买 nike

我正在尝试使用 Ajax 调用将 js 中的多个对象发送到 C# 中的 Controller 。

我在 C# 中有一个名为“Person”的对象

下一个是:

public class Person
{
public string Title { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}

我在 JavaScript 中有相同的对象。

然后创建两个人并将其发送到 Controller 。这是 Ajax 调用

$.ajax({
url: baseUrl + "/controller/TestPeople",
type: "POST",
data: {
people: people
},
success: function (resp) {
alert("ok");
}
});

这是帖子

people[0][Title]:"Mr."
people[0][FirstName]:"fname1"
people[0][LastName]:"Lname1"
people[0][Age]:23
people[1][Title]:"Mr."
people[1][FirstName]:"fname2"
people[1][LastName]:"Lname2"
people[1][Age]:25

但是当我在 Controller 中收到它时,一切都是空的

public string TestPeople(Person[] people){
//some code
}

Controller 知道有2个人,但里面的所有信息都是空的。

知道为什么吗?

为了“解决”问题,我将 Controller 更改为使用 FormCollection 并且它正在工作,但我想知道为什么另一个不工作。

谢谢大家。

最佳答案

尝试:

data : JSON.stringify(peopleArray)

在你的 Controller 中尝试:

public string Get(Person[] people){
//some code
}

关于javascript - 使用 Ajax 将 JS 对象发送到 C# Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33389506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com