В моем проекте (ASP.NET Core 2.2. MVC) я пытаюсь сделать ajax-пост с дополнительными параметрами для модели представления. Форма на странице имеет идентификатор = 'frmMain'.
Мой js выглядит так:
//post
var data = {
model: $("#frmMain").serialize(),
passtest: 'test'
};
$.ajax({
type: 'post',
url: url,
data: JSON.stringify(data),
dataType: 'json',
success: function () {
//alert('form was submitted');
}
}).done(function (result) {
if (result.status === "success") {
//some code here
}
} else {
//some code here
}
});
Мои действия контроллера выглядят так:
public IActionResult DoSomething(MyModel model, string passtest)
{
//some action code here
}
Теперь пост работает, но в моем действии контроллера только «модель» заполнена данными. Переменная "passtest" равна нулю. Также нет «passtest» в «модель».
Что я делаю не так?
Примечание: я нашел обходной путь с заполнением скрытых полей (и добавлением их в модель представления), но простая передача нескольких параметров в самом посте кажется более практичной...