我有一个从提交将发送项目值到ASHX文件使用JSON。我希望这个ASHX文件采用JSON字符串并遍历每个项目。我已经将这些放置在一个包含项目对象的项目对象中。有几篇关于Stack Overflow的文章,描述了如何“反序列化”一个数组并将其添加到自定义类中,但是,我不确定这是如何发生的。你能不能请我描述一下,好像我五岁?使用AJAX发送JSON时,如何从ASHX文件返回JSON属性?
$.ajax({
url: 'addItems.ashx',
data: JSON.stringify({items: objectArray }),
method: 'POST',
dataType: 'JSON',
contentType: "application/json; charset=utf-8",
success: function (data) {
console.log(data.responseText);
},
error: function (data) {
console.log(data.responseText);
}
});
样品JSON:
{"items":[{"qty":"374","description":"Non repellendus Illum voluptate ea eu tempora eaque maiores quaerat corrupti rerum distinctio Omnis voluptatem","capAsset":"2","iuTag":""},{"qty":"374","description":"Non repellendus Illum voluptate ea eu tempora eaque maiores quaerat corrupti rerum distinctio Omnis voluptatem","capAsset":"2","iuTag":""}]}
ASHX文件:
public class items
{
public string description { get; set; }
public string iuTag { get; set; }
public int capAsset { get; set; }
public int qty { get; set; }
}
public class addItems : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string connectionString = ConfigurationManager.ConnectionStrings["SurplusConnectionString"].ConnectionString.ToString();
SqlConnection con = new SqlConnection(connectionString);
context.Response.ContentType = "application/json";
JavaScriptSerializer json_serializer = new JavaScriptSerializer();
string json = new StreamReader(context.Request.InputStream).ReadToEnd();
var items = JsonConvert.DeserializeObject<items>(json);
}
public bool IsReusable
{
get
{
return false;
}
}