Asp.Net Core 2.x Razor Pages - получите данные с помощью Axios - PullRequest
0 голосов
/ 27 августа 2018

Я использую Asp.Net Core 2.x Razor Pages и пытаюсь собрать некоторые данные для обработки на стороне клиента, используя Axios в качестве утилиты ajax. Я использовал Axios в течение многих лет, но никогда не использовал Razor Pages, и это необходимо, поскольку мы используем его повсюду.

Проблема Я попадаю на маршрут страницы очень хорошо, и даты отображаются в коде страницы просто отлично.

Я могу успешно отправить даты до контроллера модели страницы, но не может получить список местоположений для отправки, в результате получается пустой список. Я делал это много раз с обычным MVC, но по какой-то причине мне чего-то не хватает.

Любая помощь будет приветствоваться

Вызов Javascript

let cfg = {
    params: {
        locations: selectedLocations,       // array of strings ['one', 'two', 'three']
        startDate: startDate,
        endDate: endDate
    }
};

axios.get("/main-web/Reports/GLDetail?handler=QuickReportData", cfg)
.then(function (response)
{
    console.log(response);
});

Razor Page Модель приемника

public IActionResult OnGetQuickReportData(List<string> locations, DateTime startDate, DateTime endDate)
{
    ActionResultStruct results = null;

    try
    {
        // just returning skeleton json data
        results = new ActionResultStruct(ActionResultStruct.RESULT_TYPE_SUCCESS, "", null);
        return new JsonResult(results);
    }
    catch (Exception ex)
    {
        results = new ActionResultStruct(ActionResultStruct.RESULT_TYPE_ERROR, ex.Message, ex.HResult);
        return new JsonResult(results);
    }
}
...