У меня есть приложение asp.net core 3.0 с веб-страницами, и я пытаюсь отправить JSON через ajax своему обработчику.Но параметр всегда нулевой или просто заполнен значениями по умолчанию.Я пытался, если строка JSON из поста разбирается и работает, когда я разбираю вручную.
Это мой контроллер:
public void OnPost([FromBody]FilterModel filter)
{
Console.Write(filter);
}
Это класс модели:
public class FilterModel
{
public DateTime TimeRangeFrom { get; set; }
public DateTime TimeRangeTo { get; set; }
public int CustomerId { get; set; }
}
Ajax-запрос:
$.ajax({
url: "/CustomerOverview/Test",
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify({
CustomerId: customerId,
TimeRangeFrom: picker.startDate,
TimeRangeTo: picker.endDate
}),
beforeSend: function(xhr) {
xhr.setRequestHeader("XSRF-TOKEN",
$('input:hidden[name="__RequestVerificationToken"]').val());
},
success: function(response) {
button.hide();
},
failure: function(response) {
alert(response);
}
});
И JSON, вошедшие в Chrome Dev Tools:
{CustomerId: "1", TimeRangeFrom: "2019-08-26T22:00:00.000Z", TimeRangeTo: "2019-09-25T21:59:59.999Z"}
Нужно ли настраивать отображение или что-то еще?