我有一个ASP.NET 4.0 HTTP处理程序,它应该以json格式接收和发送数据。我正在使用jquery将序列化的json对象发送到处理程序。它正确发送请求但我不知道如何从传递给处理程序的httpcontext中检索数据以及我如何反序列化...有人可以帮助我吗?
更新1
$.ajax({
type: "POST",
url: "myurl.ashx",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: $.toJSON({
...
}),
success: function (response) {
...
}
});
答案 0 :(得分:3)
您是否将来自jquery的数据作为POST或GET请求发送?在您的Http处理程序中,您可以通过HttpContext.Request
或Forms
QueryString
检索值
即。 string json = HttpContext.Current.Request.Forms["json"];
要反序列化,您可以使用内置的System.Web.Script.Serialization.JavaScriptSerializer
类,如此
string json = HttpContext.Current.Request.Forms["json"];
var js = new JavaScriptSerializer();
YourType obj = js.Deserialize<YourType>(json);