如何读取C#net中发布的Json数据?

如何读取C#net中发布的Json数据?,c#,jquery,json,C#,Jquery,Json,我想读取c#.net应用程序中以JSON发布的数据?我对这个JSON和POST方法非常陌生 有人能帮我吗? 我正在发布第1页的数据。转到其他第2页(在我的例子中是smsstaus.aspx)以测试purspoe。 我想在Page2的PageLoad中读取JSON发布的数据 示例代码 function SendSMSStatus() { $.ajax({ type: "POST", url: "myurl/smsstatus.aspx",

我想读取c#.net应用程序中以JSON发布的数据?我对这个JSON和POST方法非常陌生

有人能帮我吗? 我正在发布第1页的数据。转到其他第2页(在我的例子中是smsstaus.aspx)以测试purspoe。 我想在Page2的PageLoad中读取JSON发布的数据

示例代码

 function SendSMSStatus() {
    $.ajax({
        type: "POST",
        url: "myurl/smsstatus.aspx",
        data: '{"SmsSid":"' + $("#<%= txtSmsSid.ClientID%>").val() + '","SmsStaus":"' + $("#<%= txtSmsStaus.ClientID%>").val() + '"}',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            alert('update the db here');

        },
        error: function () { }
    });
}
函数SendSMSStatus(){ $.ajax({ 类型:“POST”, url:“myurl/smsstatus.aspx”, 数据:“{”SmsSid:“+$(“#”).val()+”,“SmsStaus:“+$(“#”).val()+“}”, contentType:“应用程序/json;字符集=utf-8”, 数据类型:“json”, 成功:功能(msg){ 警报(“在此处更新数据库”); }, 错误:函数(){} }); }
当您使用Jquery并在数据中插入JSON时,它将在正常帖子中更改,但您现在所做的是将代码更改为:

 function SendSMSStatus() {
    $.ajax({
        type: "POST",
        url: "myurl/smsstatus.aspx",
        data: {"SmsSid":$("#<%= txtSmsSid.ClientID%>").val(),"SmsStaus": $("#<%= txtSmsStaus.ClientID%>").val()},
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            alert('update the db here');

        },
        error: function () { }
    });
}
函数SendSMSStatus(){ $.ajax({ 类型:“POST”, url:“myurl/smsstatus.aspx”, 数据:{“SmsSid”:$(“#”)val(),“SmsStaus”:$(“#”)val(), contentType:“应用程序/json;字符集=utf-8”, 数据类型:“json”, 成功:功能(msg){ 警报(“在此处更新数据库”); }, 错误:函数(){} }); } 您可以使用普通的POST,但是如果您想在C#中使用JSON,请参阅此算法

您可以在smsstatus.aspx中定义WebMethod(例如SendStatus) 一个实现可能看起来像这样(从我的头顶上看)

现在您可以创建使用此方法的请求,如下所示:

 function SendSMSStatus() {       
    $.ajax({       
        type: "POST",       
        url: "myurl/smsstatus.aspx/SendStatus",       
        data: '{"SmsSid":"' + $("#<%= txtSmsSid.ClientID%>").val() + '","SmsStaus":"' + $("#<%= txtSmsStaus.ClientID%>").val() + '"}',       
        contentType: "application/json; charset=utf-8",       
        dataType: "json",       
        success: function (msg) {       
            alert('update the db here');       

        },       
        error: function () { }       
    });
函数sendsmstatus(){
$.ajax({
类型:“POST”,
url:“myurl/smsstatus.aspx/SendStatus”,
数据:“{”SmsSid:“+$(“#”).val()+”,“SmsStaus:“+$(“#”).val()+“}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:函数(msg){
警报(“在此处更新数据库”);
},       
错误:函数(){}
});

.NET将对json字符串进行反序列化,并将其作为参数传递给SendStatus

如果要请求aspx(WebForm)而不是
WebMethod
(向服务器发送数据时,使用此内容类型。默认值为“application/x-www-form-urlencoded”)


您使用的是带MVC的ASP还是不带MVC的ASP?
 function SendSMSStatus() {       
    $.ajax({       
        type: "POST",       
        url: "myurl/smsstatus.aspx/SendStatus",       
        data: '{"SmsSid":"' + $("#<%= txtSmsSid.ClientID%>").val() + '","SmsStaus":"' + $("#<%= txtSmsStaus.ClientID%>").val() + '"}',       
        contentType: "application/json; charset=utf-8",       
        dataType: "json",       
        success: function (msg) {       
            alert('update the db here');       

        },       
        error: function () { }       
    });
$.ajax({
        type: "POST",
        url: "myurl/smsstatus.aspx",
        data: '{"SmsSid":"' + $("#<%= txtSmsSid.ClientID%>").val() + '","SmsStaus":"' + $("#<%= txtSmsStaus.ClientID%>").val() + '"}',
        dataType: "json", // The type of data that you're expecting back from the server. 
        success: function (msg) {
            alert(msg.d);
        },
        error: function () { }
    });
 //Read Form data
 string testData = Request["SmsSid"] + " " + Request["SmsStaus"];

 //Prepare Json string - output
 Response.Clear();
 Response.ContentType = "application/json";
 Response.Write("{ \"d\": \"" + testData +"\" }");
 Response.Flush();
 Response.End();