Я пытаюсь сделать пост с пользовательской моделью:
public class CallbackPriorityItemModel
{
public int userID { get; set; }
public int order { get; set; }
public string name { get; set; }
}
Но я не может получить эту работу. Я должен следующий код:
function updateUserCallbackList() {
var cbList = [];
$(".callbackListItem").each(function() {
cbList.push({
Name: this.id,
Order: $('li').index(this.parentElement),
UserId: _userID
});
});
var args = {
CbList: cbList,
UserID: _userID
};
$.post(SiteUtil.urlContent('/api/AccountApi/UpdateCallbackPriorityList?' + $.param(args)));
}
Что вызывает этот метод:
[HttpPost]
public void UpdateCallbackPriorityList(CallbackPriorityItemModel[] cbList, int userID)
Я подтвердил, что cbList не является нулевым в JavaScript, но это всегда нуль, когда она попадает UpdateCalbackPriorityList, хотя идент не ноль. Я пытался использовать другие методы:
var url = SiteUtil.urlContent('/api/AccountApi/UpdateCallbackPriorityList/');
$.ajax({
url: url,
type: 'POST',
data: JSON.stringify(args),
dataType: 'json',
contentType: 'application/json; charset=utf-8'
});
, но я получаю ошибки говоря браузер не может найти UpdateCallbackPriorityList. Предложения?
;
Я думаю, что ваш метод должен быть «статичным» для вызова AJAX. Даже при этом я не уверен, что MVC может создать сложный объект из запроса http-запроса, не имея каких-либо конкретных инструкций. – PoweredByOrange