Размещение данных с проблемой AJAX - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь передать объект методу HttpPost с помощью ajax.

Это мой метод ajax:

function addItem(invoiceID) {
var newItemVM = {
    Description : $('#item-description').val(),
    Quantity : $('#item-quantity').val(),
    ItemTaxFreePrice : $('#item-tax-free-price').val()
};

$.ajax({
    type: 'POST',
    url: 'AddItem',
    data: JSON.stringify({ newItemVM: newItemVM }),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (result) {
        $('#new-item').text(result.Quantity + 'Hello');
    }
});

}

Это метод HttpPost в C #

[HttpPost]
    public async Task<IActionResult> AddItem(NewItemVM newItemVM)
    {
        return Json(newItemVM);
    } 

Это класс NewItemVM:

public class NewItemVM
{
    public string Description { get; set; }
    public int Quantity { get; set; }
    public double ItemTaxFreePrice { get; set; }
}

Проблема в том, что параметры в объекте newItemVM всегда равны нулю.

Может кто-нибудь сказать мне, что я упускаю? TNQ!

1 Ответ

0 голосов
/ 04 июля 2018

привет, вам не нужно указывать имя вашей модели в вызове объекта json, как показано ниже

$.ajax({
    type: 'POST',
    url: 'AddItem',
    data:  newItemVM ,
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (result) {
        $('#new-item').text(result.Quantity + 'Hello');
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...