Почему привязка к Web-интерфейсу настолько сложна по умолчанию: Я пробовал много комбинаций, но ни один из них, похоже, не работает. Это Ajax запрос:привязка модели веб-API не работает
var dataString = JSON.stringify({
request: Request
});
var request = Request;
$.ajax({
type: "POST",
data: '='+dataString,
// contentType: 'application/x-www-form-urlencoded',
contentType: "application/json; charset=utf-8",
dataType: "json",
Это контроллер:
public AccResultObject Post(string jezik, string page, string size, string sort,AccRequestViewModel model)
Это AccRequestViewModel
public class AccRequestViewModel
{
public AccRequestObject request { get; set; }
}
и это AccRequestObject:
public class AccRequestObject
{
public int FM { get; set; }
public int Budget { get; set; }
public string WebCatID { get; set; }
public int Distance { get; set; }
}
Whatev Я делаю, контроллер получает нулевое значение.
Я попробовал это также. Это кажется очень логичным:
var dataString = JSON.stringify({
request: Request
});
$.ajax({
type: "POST",
data: dataString, ...
и контроллер получает AccRequestObject:
public AccResultObject Post(string jezik, string page, string size, string sort,[FromBody] AccRequestObjectmodel)
Он отлично работает, кроме этой маленькой проблемы. Значения не привязаны.
Какова структура строкового запроса «Запрос»? Вам также не нужно добавлять «=» к части данных вызова ajax. – WestDiscGolf
Я узнаю, что мне нужно добавить «=» в WEB API –
Вам не нужно, и, поскольку вы получаете нули в связующем, возможно, попробуйте удалить его :-) Пожалуйста, предоставьте json, который вы пытаетесь POST, как без это сложно определить вопрос – WestDiscGolf