во-первых, извините за мой плохой английский, моя проблема в том, что у меня есть контроллер, который получает список объектов в качестве параметра, но когда я пытаюсь отправить этот список на контроллер, всегда получаю null.
public async Task<ActionResult> MyAction(List<class> object)
{
//do stuff
}
мой javascript
var array= []
array.push()...
document.location = '/MyAction/Controller?object'JSON.stringify(array)
my controller always receive null
я уже пытался использовать ajax, но по какой-то причине ajax дважды вызывает мой контроллер, при первом вызове я правильно получаю свой список, но во втором получаю null
var array =[]
array.push()//just example
$.ajax({
type: 'POST',
tradicional:true,
async:true,
url: '/controller/MyAction',
data: JSON.stringify({ 'object': array}),
contentType: 'application/json; charset=utf-8',
datatype: 'json',
success: function (result) {
//if succes then load my View passing array as param
document.location = '/controller/MyAction?object' + JSON.stringify(array) ;
},
error: function (result) {
}
});
i alreay tried use ajax, but for some reason ajax call my controler twice
Я предполагаю, что первый вызов - это запрос POST, выполненный строками:
$.ajax({
type: 'POST',
а второй вызов — это GET-запрос, выполняемый строкой:
//if succes then load my View passing array as param
document.location = '/controller/MyAction?object' + JSON.stringify(array) ;
Проверьте, так ли это, на вкладке «сеть» отладчика вашего браузера, решите, хотите ли вы использовать POST или GET, и соответствующим образом настройте свой контроллер. Эта тема может быть полезна: asp mvc http получить действие с объектом в качестве параметра
Если загружается, это находится в параметре «ответ» функции «успех». Однако он не отображается. Можете ли вы сделать «console.info (ответ)» в обработчике успеха?
если я не добавлю это: // если все получится, то загрузите мой передаваемый массив View как param document.location = '/controller/MyAction?object' + JSON.stringify(array) ; После отправки на контроллер представление не загружается