【发布时间】:2011-07-07 11:26:12
【问题描述】:
我在将 JSON 字符串化数组传递给 PageMethod 时遇到问题
[{
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "8",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}, {
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "9",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}, {
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "5",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}, {
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "13",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}, {
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "6",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}, {
"StartDate": "3/1/2011",
"EndDate": "3/31/2011",
"UserId": "11",
"DdlViewSelectedValue": "zzz#",
"DdlViewSelectedItem": "zzz",
"DdlOrgSelectedValue": "8"
}]
当我收到这个 ajax 请求时,'jsonText' 包含上面列出的数据
function GetUserSchedules() {
var jsonText = $.toJSON(arrParams);
$.ajax({
type: "POST",
url: "/myurl/jquery.aspx/GenerateUserSchedules",
data: "{" + jsonText + "}",
contentType: "application/json",
dataType: "json",
success: AjaxSucceeded
,
error: AjaxFailed
});
}
页面方法:
[System.Web.Script.Services.ScriptMethod]
[System.Web.Services.WebMethod]
public static void GenerateUserSchedules(Data[] data)
{
//do stuff; will return data but for now, just keeping it like this
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
}
数据类:
[Serializable]
public class Data
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public int UserID { get; set; }
public string ViewSelectedValue { get; set; }
public string ViewSelectedItem { get; set; }
public string OrgSelectedValue { get; set; }
}
每次发送 ajax 请求时,都会执行错误函数。我做错了什么?
【问题讨论】:
-
报错函数是什么?
-
实际上,
jsonText是在哪里发送到服务的?我看到scheduleRows正在发送,但jsonText没有发送。 -
抱歉,打错字了...我已经更正了代码
-
消息是 {Message":"There was an error processing the request.", ","StackTrace":"","ExceptionType":""} Status is '500' StatusText is '错误'ReadyState 是 '4'