14

我正在构建一个动态的部分加载 asp.net 页面,我想使用 jQuery 来调用页面方法或 Web 服务来检索内容 HTML。

页面方法或 Web 服务,性能方面,哪种方式更好?

如果我在服务器端调用页面方法,页面是否会经历完整的生命周期?

有什么好的资源可以帮助我更好地理解页面方法吗?

4

2 回答 2

19

您可以在不需要ScriptManager控件的情况下调用 PageMethods 和 Web 服务(它会生成 JavaScript 代理对象,允许您使用熟悉的语法来调用 Web 服务和页面方法)。

使用jQuery直接调用ASP.NET AJAX页面方法的文章

关于使用 jQuery 使用 ASP.NET JSON Web 服务的文章

这是2007 年关于 Web 服务和页面方法的 MSDN 文章。简单地看一下,它似乎仍然与它们的工作方式/今天让它们工作需要做什么有关。

性能方面:

您可能期望页面方法提供比 Web 服务更好的性能。毕竟,要解析 Web 服务调用,ASP.NET 运行时必须解析 SOAP 数据包。然而,这并不完全正确。ASP.NET AJAX 安装了一个定制的 HTTP 处理程序(参见图 3),它拦截所有 ASMX 请求。带有 /js 后缀的请求的处理方式不同,直接使用 JSON 有效负载和 Web 服务方法。因此,不涉及任何 SOAP,请求正文仅包含输入参数的 JSON 流。对于非 AJAX 请求,新的 HTTP 处理程序只是将调用委托给理解 SOAP 的原始 ASP.NET 处理程序。

为了响应页面生命周期,页面方法经过服务器端页面生命周期(也有一个客户端页面生命周期)。

于 2009-10-07T12:53:22.240 回答
0

这是一个很好的资源:

http://tugberkugurlu.com/archive/asp-net-web-forms---calling-web-service-page-methods-using-jquery

这篇博文将引导您完成。

于 2011-10-20T07:55:39.250 回答