4

次のようなデータがあります。

var data = {
        email: $("#txtEmail").val(),
        password: $("#txtPassword").val()
    }
    data = JSON.stringify(data);

jquery ajax を使用して、このデータを Web メソッドに渡します。私の webmethod が次のような場合、これはすべて機能します。

[WebMethod]
    public static Response TryLogin(string email, string password) {..}

しかし、次のような Web メソッドにデータを渡そうとしています。

[WebMethod]
    public static Response TryLogin(LoginData data) {..}

私の LoginData クラスは次のようになります。

public class LoginData
        {
            public string email { get; set; }
            public string password { get; set; }
        }

この方法で実行しようとすると、次のエラーが表示されます。

エラー: 500: {"メッセージ":"無効な Web サービス呼び出し、パラメーターの値がありません: \u0027data\u0027.

これを正しく行うにはどうすればよいですか?

4

1 に答える 1

4
data = JSON.stringify({data: data});

詳細を説明すると、現在2つのパラメーターを送信していますが、Webメソッドは1つ(名前付きデータ)のみを想定しています。

于 2013-03-08T15:12:31.067 に答える