我目前正在处理将JSON数据发送到My Controller的问题。
我发现当传递一个包含嵌套对象的对象时,嵌套对象将为null。我无法弄清楚我错过了什么......
我的服务器端看起来像这样:
[HttpPost]
public ActionResult ApplyChanges(List<Change> pChanges)
{
//the Issue occurs here in every object of pChanges:
//IgnoreFlag was populated correctly, but the Detection Object is null...?
}
public class Change
{
public Detection Detection { get; set; }
public bool IgnoreFlag { get; set; }
}
我的客户端看起来像这样:
var data = [
{
"Detection": {
"PropertyOld": 1,
"PropertyNew": 2,
},
"IgnoreFlag": true
},
{
"Detection": {
"PropertyOld": 3,
"PropertyNew": 4,
},
"IgnoreFlag": false
}
]
$.ajax({
type: "POST",
url: "/Url/To/ApplyChanges",
data: JSON.stringify({"pChanges": data}),
contentType: "application/json",
success: function (data, textStatus, jqXHR) {
//do something here
});
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
使用
JSON.stringify(data)
而不是使用
JSON.stringify({"pChanges": data})