我想與大家分享今天我學到的東西。我的問題是:將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