Отправка массива в контроллер ASP.NET MVC 2 с использованием AJAX - PullRequest
1 голос
/ 29 сентября 2010

Существует известная проблема с отправкой массива на контроллер ASP.NET MVC. Я нашел много решений, таких как , что . Почему бы не использовать обычный объект вместо массива? Работает хорошо. Пример кода:

    <script>
    $(function(){
        $('.asArray').click(function(){
            var array = Array();
            array[0] = 'Dima';
            array[1] = 'Ann';
            array[2] = 'John';
            $.post('/Home/Get', {data: array}, function(data){alert(data);});
        });
        $('.asObject').click(function(){ // works good
            var array = Object();
            array[0] = 'Dima';
            array[1] = 'Ann';
            array[2] = 'John';
            $.post('/Home/Get', {data: array}, function(data){alert(data);});
        });
    });
</script>
<div>
    <input type="button" class="asArray" value="asArray"/>
    <input type="button" class="asObject" value="asObject"/>

действие контроллера:

public ActionResult Get(IEnumerable<string> data)
    {
        if (data == null)
            return Content("data == null");
        return Content("data = [" + data.Aggregate((agr, curr) => agr + ", " + curr) + "]");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...