Asp.net
ASP.NET 頁面方法與 Web 服務
我正在建構一個動態的部分載入 asp.net 頁面,我想使用 jQuery 來呼叫頁面方法或 Web 服務來檢索內容 HTML。
頁面方法或 Web 服務,性能方面,哪種方式更好?
如果我在伺服器端呼叫頁面方法,頁面是否會經歷完整的生命週期?
有什麼好的資源可以幫助我更好地理解頁面方法嗎?
您可以在不需要
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 處理程序。
為了響應頁面生命週期,頁面方法不經過伺服器端頁面生命週期(也有一個客戶端頁面生命週期)。