我想和大家分享我今天学到的东西.我的问题是:
您可以将JSON对象从JavaScript代码传递给.NET页面方法吗?例如:
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对象传递给一个Page方法,它就是一个Dictionary(Of String,String).所以我的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
解决方法:
查看这篇文章:
http://dotnetslackers.com/columns/ajax/ASPNETAjaxWebService.aspx
使用[GenerateScriptType(typeof(Task))]装饰WebMethod,然后在客户端,您将能够创建任务.然后将它作为常规对象传递给服务器端方法.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。