我正在構建一個動態部分加載的asp.net頁面,我想用jQuery來調用頁面方法或web服務來檢索內容的HTML。ASP.NET頁面方法vs網絡服務
頁面方法或web服務,性能明智,哪種方式更好?
如果我打電話給頁面方法,在服務器端,頁面是否經歷了完整的生命週期?
有沒有什麼好的資源可以幫助我更好地理解頁面方法?
我正在構建一個動態部分加載的asp.net頁面,我想用jQuery來調用頁面方法或web服務來檢索內容的HTML。ASP.NET頁面方法vs網絡服務
頁面方法或web服務,性能明智,哪種方式更好?
如果我打電話給頁面方法,在服務器端,頁面是否經歷了完整的生命週期?
有沒有什麼好的資源可以幫助我更好地理解頁面方法?
您可以調用PageMethods和Web服務,而無需控制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 處理程序只是將回調 委派給 理解SOAP的原始ASP.NET處理程序。
針對頁面的生命週期,第方法做不經過服務器端頁面生命週期(也有client-side Page Lifecycle太)。
這裏是一個很好的資源爲你:
http://tugberkugurlu.com/archive/asp-net-web-forms---calling-web-service-page-methods-using-jquery
本博客文章將引導你。
嘿@Russ同樣的文章! – TheVillageIdiot 2009-10-07 12:57:45
@ TheVillageIdiot--我沒有想到它會很快再次出現! – 2009-10-07 13:01:53
@RussCam後續問題,是否PageMethods異步,或者他們可以做成異步?我碰到了一個PageMethods調用的牆(這需要大約4秒的返回),並阻止其他基於計時器的Page方法調用按預期方式運行。 – 2016-06-28 14:51:10