@Thugmaster
-

Отправить коллекцию данных на ASP.NET MVC Action через jQuery post на другой домен?

Привет !
Создал файл index.html на диске C : \ , далее в файле написал простой post запрос через $.post() который отправляет массив с данными на url: localhost:1901/Test/AddWords. На сервере ASP.NET MVC приложение которое работает локально url: localhost:1901 на action AddWords контроллера Test.
В action массив приходит только поля элементов пустые.

Код из html файла.
Файл лежит просто в папке на компьютере.

//index.html
$.post("http://localhost:1901/Test/AddWords",{words:words},function(data){
});


На сервер приходит коллекция со всеми элементами да только все свойства равны null.

Код на сервере.
public ActionResult AddWords(Word [] words)
{
    //words[0].Translation = null;
}


Так данные передаются в запросе.
31235374d4da4caa99aadcb810b9f063.PNG

P.S Заранее благодарю!
  • Вопрос задан
  • 5216 просмотров
Решения вопроса 1
@Thugmaster Автор вопроса
-
Я переделал всё вот так
public ActionResult AddWords()
{
            var wordsModel = HttpContext.Request.Form["words"];
            var wordArray = new JavaScriptSerializer().Deserialize<WordModel[]>(wordsModel);
}


Код на странице.
$.post("http://localhost:1901/Test/AddWords",{words:JSON.stringify(words)},function(data){});

Но этот код мне не нравится!!
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Поля пустые, потому что не срабатывает model binding. Домены тут не при чем.
Выглядит ужасно, но суть думаю понятна:
$.post("http://localhost:1901/Test/AddWords", {
            "words[0].id" : 123,
            "words[0].EngValue" : 123123,
            "words[0].Translation" : 123123,
        }, function (data) {
    });
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы