Я генерирую объект js, который выглядит следующим образом:
cartStorage = {
name: 'testcustomer',
email: 'test@gmail.com',
items: [
{
licenseName: 'Private',
licensePrice: 2
},
{
licenseName: 'Public',
licensePrice: 4
}
],
totalPrice: 6
}
Затем я передаю этот объект в контроллер mvc, используя ajax
$.ajax({
url: '/TestPayment/ChargeTest',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(cartStorage),
success: function(response){
if (response != null) {
alert(response);
} else {
alert("Something went wrong");
}
}
});
Вот модель представления, связанная с этим методом
namespace Web.ViewModels.Payment
{
public class Items
{
public string licenseName { get; set; }
public int licensePrice { get; set; }
}
public class PayerInfo
{
public int totalPrice { get; set; }
public string name { get; set; }
public string email { get; set; }
public Items Items { get; set; }
}
}
Вот метод контроллера mvc, который обрабатывает запрос ajax
[HttpPost]
public ContentResult ChargeTest([FromBody] PayerInfo model)
{
String FullName = model.name;
}
Но когда сервер выполняет метод контроллера, модель оказывается нулевой.
Однако, если я закомментирую класс Items и создание экземпляра в классе PayerInfo в viewmodel, то модель будет успешно передана, и все данные сохранены, у меня просто проблема ссписок внутри объекта js.
Что я делаю не так?