2
我有以下WORKING代码:C#保存对象列表Vs的保存对象(从JSON)
类(声明的对象)
public class saveRow
{
public int proId { get; set; }
public string proName{get;set;}
}
控制器:
[HttpPost]
public virtual JsonResult SaveRow(saveRow input)
{ /* CODE HERE */}
JavaScript对象(去过发送)
var test = {"proId" : 1, "proName" : "Test"}
JavaScript的Ajax调用
$.ajax({
type: "POST",
url: "URL",
dataType: "json",
data: test,
traditional: true,
success: function (data, status, request) {
if (data.Error != undefined) {
alert("System Error: " + data.Error);
$(row).find('*').attr('disabled', false);
return;
}
},
error: function (request, status, error) {
console.log("ERROR");
}
});
现在,当我想在一个时间,所以我做了以下送我行的列表,而不是一个出现问题:
为了测试我采取了相同的对象和done
var test2 = []; test2.push(test); test2.push(test);
和对象现在看起来像:
[{"proId" : 1, "proName" : "Test"},{"proId" : 1, "proName" : "Test"}]
我的控制器现在看起来像:
[HttpPost]
public virtual JsonResult SaveRow(List<saveRow> input)
{ /* CODE HERE */}
发送对象为JSON的名单时,varible输入总是空也tryed IEnumberable
。
但每次我通过控制器参数发送此列表“输入”始终为空。
这是为什么?
SOLVED-
public virtual JsonResult SaveRow(saveRow[] input)
而添加的内容类型!用JSON.stringify!
唉唉,我看到你在得到什么在这里,当前加入它和项目是builidng将更新的结果。 – LmC
@LmC是的,让我知道它是怎么回事。如果它不工作,只需粘贴你在网络控制台中看到的请求部分。 – PSL
嗨仍然是同一个问题,我的对象看起来像{“输入”:[{},{}]}请注意{}只是上面显示的结构,以保持评论整洁的简短 – LmC