在C#方法中将json对象作为参数传递

时间:2018-07-13 09:55:51

标签: javascript c# asp.net json ajax

我正在使用facebook api获取用户的facebook数据,如下所示:

 function testAPI() {
            FB.api('/me?fields=id,name, birthday, picture.width(100).height(100), email', function (response) {
                if (response && !response.error)
                    //console.log(response);
                    buildProfile(response);
            })
        }

现在我想将响应json对象传递给c#中的方法作为参数。为此,我使用ajax如下:

function buildProfile(user) {
            $.ajax({
                url: 'callback.aspx/SaveData',
                data: JSON.stringify(user),
                dataType: "json",
                type: "POST",
                contentType: "application/json; charset=utf-8",
                success: function (result) {
                }
            });
        }

在c#中有一个名为SaveData的方法,我在该方法上设置了一个断点。

如果我已经调用其中存在SaveData方法的callback.aspx页面,则上面定义的url:'callback.aspx / SaveData'。 但是以某种方式,我无法重定向到页面callback.aspx和C#中的SaveData方法。

 public void SaveData(List<string> strings)
 {
            string text = "";
 }

任何帮助将不胜感激。预先感谢。

1 个答案:

答案 0 :(得分:1)

[WebMethod]
public void SaveData(List<string> strings)
{
      string text = "";
}

被调用的特定方法需要将属性 WebMethod 定义为使用ajax进行调用,在您的情况下我看不到该属性。