Я получаю нулевые значения в контроллере. Не уверен, что мне не хватает.
У меня есть сетка, где у меня есть список гостей (с именем и адресом электронной почты), где пользователь выбирает гостя по флажку.
Затем я читаю имя и электронную почту выбранных контактов и собираю массив js.
Затем этот массив передается в MVC 3 controller
.
JS код:
var name ='', email='';
var guest = new Array();
var guests = new Array();
$('.CBC').each(function () { //loop grid by checkbox class
if (this.checked) {
name = GetSelectedName();
email = GetSelectedEmail();
guest = { 'Email': email, 'Name': name };
guests.push(guest);
}
});
$.ajax({
type: "POST",
url: GetURL(),
data: guests,
dataType: "json",
success: function (res) {
//do something
}
});
Контроллер:
[HttpPost]
public ActionResult AddGuests(List<SelectedGuest> guests)
{
GuestService svc = new GuestService();
//do something with guests
//But Name and Email of all items in guests are null!!!
}
public class SelectedGuest
{
//represent the email columns of the contact grid
public string Email { get; set; }
//represent the Name column of the contact grid
public string Name { get; set; }
}
Нужно ли явно преобразовывать массив js в объект json для его сериализации?