将JavaScript对象发布到服务器(asp.net 4.5 c#)时遇到了一些问题。
对象是由用户创建的(我正在使用jquery),然后用户可以将该对象发送到服务器来处理信息,
我需要发送到服务器的数据是jQuery对象数组,
我已经尝试了这个,但它没有用:
var sendOrder = function () {
$.ajax({
type: "POST",
url: "Products.aspx/ProcessOrder",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
data: JSON.stringify(addedProducts),
success: function (result) {
debugger;
alert(result);
},
error: function (result) {
debugger;
alert(result.responseText);
}
});
}
sendOrderInfo.bind('click', sendOrder);
服务器端方法是:
[System.Web.Services.WebMethod]
public static string ProcessOrder(object orderInfo) {
return "Order Processed Successfully";
}
并且发布的对象(对象数组)如下所示:
addedProducts
[
Object
product: "Cerejas"
quantity: "45"
__proto__: Object
,
Object
product: "Farinheira"
quantity: "4"
__proto__: Object
]
有没有人有想法?
答案 0 :(得分:0)
我希望你遵循这个过程:
为对象创建一个类
public class Products
{
public string product { get; set; }
public int quantity { get; set; }
}
[System.Web.Services.WebMethod]
public bool ProcessOrder(Products orderInfo)
{
return orderInfo != null;
}
json致电:
$.ajax({
url: "Products.aspx/ProcessOrder",
type: "POST",
contentType: "application/json",
data: JSON.stringify(addedProducts),
success: function(response) {
response ? alert("It worked!") : alert("It didn't work.");
}
});
请告诉我它是否适合您。