我想通過集合到JSON對象到MVC行動。提供在谷歌幾乎所有的我都試過的解決方案,它沒有數據傳遞到行動,請讓我知道我錯過了什麼:傳遞JSON到ASP.Net MVC動作
AJAX請求
var data = [];
var questID = 100;
data.push({ QuestionTypeId: '2', QuestionId: questID, Answer: 'asdff' });
data.push({ QuestionTypeId: '2', QuestionId: questID, Answer: 'asdff' });
data.push({ QuestionTypeId: '2', QuestionId: questID, Answer: 'asdff' });
data.push({ QuestionTypeId: '2', QuestionId: questID, Answer: 'asdff' });
//var items = JSON.stringify(data);
//alert(items);
var items = JSON.stringify({ 'items': data });
alert(items);
$.ajax({
url: '/Dashboard/CreateAssessment',
data: items,
type: 'POST',
contentType: "application/json; charset=utf-8",
dataType: 'json',
traditional: true,
success: function (response) {
if (response.success) {
swal('Password Changed', response.Message, 'success');
window.location.href = "/Account/Management";
} else {
$("update-password").removeAttr("disabled");
swal('Error', response.Message, 'error');
}
},
error: function (response) {
$("update-password").removeAttr("disabled");
}
});
模型類
public class AssessmentQuestion
{
public int Id { get; set; }
public string Description { get; set; }
public int DisplayOrder { get; set; }
public string PreviousYearValue { get; set; }
public QuestionType QuestionType { get; set; }
}
控制器操作方法
// POST: /Dashboard/CreateAssessment
[HttpPost]
public JsonResult CreateAssessment(List<AssessmentAnswerModel> items)
{
var text = items;
return Json(new { success = true });
// return null;
//return RedirectToAction("Thanks", "Account");
}
更改行'var items = JSON.stringify({'items':data});''var items = JSON.stringify(data);'它應該可以工作。 –