我似乎在将包含数组的 javascript 对象传递给我的 MVC 控制器时遇到问题。我有一个包含两个字符串和一个字符串数组的对象。这两个字符串正确绑定,但是一旦我向对象添加一个数组,我就会收到以下错误:
集合是只读的。
这是我的 JS + Ajax 代码:
$('.submit').on('click', function() {
var viewModel = {
FName: "John",
LName: "Doe",
DaysOfTheWeek: ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat']
};
console.log(viewModel);
$.ajax({
url: "/Home/JsonMethod",
type: "POST",
data: JSON.stringify(viewModel),
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function (data) {
console.log(data);
}
});
});
这是我的 MVC 控制器:
public JsonResult JsonMethod(Person person)
{
return Json(person, JsonRequestBehavior.AllowGet);
}
这是 Person 类:
public class Person
{
public string FName { get; set; }
public string LName { get; set; }
public string[] DaysOfTheWeek { get; set; }
public Person()
{
DaysOfTheWeek = new string[7];
}
}
我在网上看了看,但我找不到任何处理以下问题的东西。对此事的任何帮助都会很棒。