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