0

JavaScript オブジェクト配列をリスト オブジェクトとしてサーバーに送信したいのですが、サーバー側メソッド (GetData) は 3 つの要素を持つリスト オブジェクトを受け入れますが、すべての要素に null 値があります。何かアドバイス?前もって感謝します。

クライアントで:

ユーザー.js

define(function () {        
    function User(name) {
        this.Name = name 
    }
    return User;
});

main.js

var users = [new User('Barney'),
                 new User('Cartman'),
                 new User('Sheldon')];
    $.ajax({
        type: "POST",
        url: "/Home/GetData",
        data: {users: users},
        success: function (data) {
            //alert(data.Result);
        },
        dataType: "json"
    });

サーバーで:

GetData アクション

public void GetData(List<User> users){
}

ユーザーモデル

public class User {
        public string Name { get; set; }
}
4

1 に答える 1

0

以下のように main.js を変更したところ、うまくいきました。

main.js

var params = {'users': [new User('Barney'),
                        new User('Cartman'),
                        new User('Sheldon')]};

    $.ajax({
        type: "POST",
        url: "/Home/GetData",
        data: JSON.stringify(params),
        success: function (data) {
            //alert(data.Result);
        },
        contentType: "application/json"
    });
于 2012-12-28T12:07:47.267 に答える