ajax передает список int в контроллер asp net api, параметр имеет значение null - PullRequest
1 голос
/ 24 мая 2019

Я хочу передать список внутренних идентификаторов в мой контроллер, но когда данные попадают в действие контроллера, параметр имеет значение null

  [HttpGet]
    public async Task<ActionResult> GetReport(int[] items)
    {
        var viewModel = await _reportLogic.GetReportByIdAsync(items);
       // return something;
    }

У меня есть этот код в моем интерфейсе

        $('#testPreviewList').click(function (e) {
        var items = new Array();
        $('.reportId').each(function () {
            items.push(this.id);
        });
        console.log(items);
        $.ajax({
            url: "/home/GetReport",
            type: "GET",
            //contentType: "application/json; charset=utf-8",
            data: { "items": items},
            dataType: "json",
            success: function (data) {
                //do something
                });
                $("#datos").html(row);
                $('#authorNameTextBox').val('');
            },
            error: function (result) {
                //alert("Error");
            }
        });
    });

Что я делаю не так?

спасибо

1 Ответ

0 голосов
/ 24 мая 2019

Используйте POST вместо GET. Использовать традиционное свойство в ajax, установить значение true.

$.ajax({ url: "/home/GetReport", type: "POST", //contentType: "application/json; charset=utf-8", data: { "items": items}, dataType: "json", Traditional: true, success: function (data) { //do something }); $("#datos").html(row); $('#authorNameTextBox').val(''); }, error: function (result) { //alert("Error"); } });

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...