Моей проблемы:Ajax и MVC объекта класса проводки к контроллеру
Первой, у меня есть форма поиска, где критерии пользователя вводит и запрос посылаются к соответствующему действию индекса контроллеров. Вход пользователя передается как тип модели, который я создаю только для хранения данных. Я возвращаю модель в представление, а затем прямо перед визуализацией представления. Я получаю данные модели Model Model с использованием jquery, и у меня есть knockout.js/ajax, выставляющий «данные» в действие jsonresult, где происходит фильтрация поиска, и я обновляю представление с использованием данных json и привязки данных для нокаутов.
Действие jsonresult принимает строку sortByText (работает) для сортировки таблицы и ViewModel. Но когда возникает вызов ajax, мое действие jsonresult не распознает значения, переданные данным объектом.
Как я могу правильно передать «SearchFormModel» в действие JSONresult?
AJAX
'self.options.formModel' держит мои данные, посланные действия Index; во время отладки я вижу, что у него есть данные, но на следующем этапе он не отправляется в действие jsonresult, а только sortByText. Может ли ajax 'data:' распознавать только строки и int?
$.ajax({
type: 'POST',
url: Url,
data: { sortByText: selectedText, formModel: self.options.formModel },
dataType: "json"
})....etc
Контроллер
[HttpGet]
public ActionResult Index(string sortByText, SearchFormModel formModel)
{
var model = new SearchViewModel();
model.FormModel = formModel;
return View(model);
}
[HttpPost]
public JsonResult GetData(string sortByText, SearchFormModel formModel)
{
//return jsonData
}