我想与大家分享今天我学到的东西。我的问题是:将JSON对象传递给Web方法
您能否将JavaScript代码中的JSON对象传递给.NET Page Method?例如:
var task = {
Title: $("#titlenew input", $(newTaskRow)).val(),
StartDate: $("#startnew input", $(newTaskRow)).val(),
EndDate: $("#endnew input", $(newTaskRow)).val(),
EstimatedHours: $("#esthrsnew input", $(newTaskRow)).val(),
PredecessorsOutlineNumbers: $("#depnew input", $(newTaskRow)).val(),
OutlineNumber: $("#ordernew", $(newTaskRow)).text()
};
PageMethods.AddTask(task, saveNewTaskCompleted, saveNewTaskFailed);
如果可以,我的web方法应该接受什么类型的.NET对象?
我发现是的,你可以传递一个JSON对象给页面方法,它会以字典(字符串,字符串)的形式出现。所以,我的Web方法的签名是这样的:
<System.Web.Services.WebMethod()> _
Public Shared Sub AddTask(ByVal taskJson As Dictionary(Of String, String))
Dim oTask As New Task()
oTask.Title = taskJson("Title")
' all other accesses to the JSON object here
End Sub
这是问答网站,而不是博客。 – 2009-04-10 19:33:29
从stackoverflow的常见问题解答:“提问并回答你自己的编程问题也很好,但假装你在危险之中:用问题的形式说出它。”你没有这样做。也许将其重写为问题/答案。 – artlung 2009-04-10 19:48:29