我正在构建一个动态的部分加载asp.net页面,我想用jQuery来调用页面方法或web服务来检索内容HTML。
页面方法或Web服务,性能明智,哪种方式更好?
如果我调用页面方法,在服务器端,页面是否会经历整个生命周期?
有没有好的资源可以帮助我更好地理解页面方法?
答案 0 :(得分:18)
您可以调用PageMethods和Web Services,而无需ScriptManager
控件(生成JavaScript代理对象,允许您使用熟悉的语法来调用Web服务和页面方法)。
关于using jQuery to directly call ASP.NET AJAX page methods的文章
关于using jQuery to Consume ASP.NET JSON Web Services的文章
这是一个MSDN article from 2007 on Web Services and Page Methods。简要地看一下它,它们似乎仍然与它们如何工作/你需要做什么才能使它们今天起作用相关。
表现明智:
您可能希望提供页面方法 比Web服务更好的性能。 毕竟,要解决Web服务 调用,ASP.NET运行时必须 解析SOAP数据包。然而,这, 事实并非如此。 ASP.NET AJAX 安装一个量身定制的HTTP处理程序 (见图3)截取所有 ASMX请求。使用/ js的请求 后缀处理方式不同, 直接使用JSON有效负载 和Web服务方法。结果是, 没有涉及任何SOAP和 请求的主体只包含 输入参数的JSON流。 对于非AJAX请求,新的HTTP handler只是委托回调 到原来的ASP.NET处理程序 了解SOAP。
为了响应页面生命周期,页面方法不通过服务器端页面生命周期(也有client-side Page Lifecycle)。
答案 1 :(得分:0)