自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ASP.NET UpdatePanel更新

開發(fā) 后端
本文介紹ASP.NET UpdatePanel更新,具有太多視圖狀態(tài)的頁面會降低性能,并且具有太多視圖狀態(tài)的頁面在 ASP.NET 應(yīng)用程序中都太常見。

多個 UpdatePanel

一個頁面可以承載幾個UpdatePanel。默認(rèn)情況下,當(dāng)一個頁面上的 UpdatePanel更新時,該頁面的其他 UpdatePanel也會更新。有時候這是您想要的,但多半您并不需要每個 UpdatePanel更新來響應(yīng)其他 UpdatePanel。
通過將頁面上每個 UpdatePanel 控件的 UpdateMode 屬性設(shè)置為 Conditional,您可以選擇更新哪個 UpdatePanel 實例(及更新的時間)。然后,在 UpdatePanel更新和調(diào)用服務(wù)端事件處理程序的時候,請調(diào)用您要更新的其他面板上的 UpdatePanel.Update。這樣可以通過減少呈現(xiàn)的控件的數(shù)量來減輕服務(wù)器的負(fù)載,而且它還減少了響應(yīng)中的數(shù)據(jù)量,因為不進行更新的 UpdatePanel 不會將任何數(shù)據(jù)添加到響應(yīng)中。

不使用 UpdatePanel更新

AJAX 不僅可以創(chuàng)建更好的用戶體驗,它還可以提供更高效的網(wǎng)絡(luò)通信。當(dāng)發(fā)生傳統(tǒng)的 ASP.NET 回發(fā)時,Web 窗體中包括視圖狀態(tài)在內(nèi)的所有數(shù)據(jù),都會傳輸?shù)交匕l(fā)中的服務(wù)器。視圖狀態(tài)是 ASP.NET 頁面,尤其是使用 DataGrid 和 GridView 控件的 ASP.NET 頁面似乎會反應(yīng)遲緩的一個原因。具有太多視圖狀態(tài)的頁面會降低性能,并且具有太多視圖狀態(tài)的頁面在 ASP.NET 應(yīng)用程序中都太常見。

用 AJAX 回調(diào)替代 ASP.NET 回發(fā)的好處之一是能正確完成,AJAX 回調(diào)僅傳送需要被傳送的數(shù)據(jù)。這意味著,它們不必將視圖狀態(tài)包括在該傳輸中。

當(dāng)您使用 UpdatePanel 在一個頁面上執(zhí)行無閃爍更新時,您可能會認(rèn)為您在進行高效構(gòu)建。畢竟,UpdatePanel 使用的是 AJAX,不是嗎?不幸的是,如果您在 UpdatePanel更新時檢驗一下網(wǎng)絡(luò)中的通信,您會發(fā)現(xiàn)您根本就沒有保存什么東西,至少是在發(fā)送的時候沒有保存。通常在回發(fā)期間傳送到服務(wù)器的視圖狀態(tài)數(shù)據(jù)(與其他數(shù)據(jù))也會在 UpdatePanel 回調(diào)期間傳送。事實上,來自 UpdatePanel 的異步 XML-HTTP 請求中所增長的數(shù)據(jù)幾乎與在標(biāo)準(zhǔn) ASP .NET 回發(fā)中增長的數(shù)據(jù)相同。下面是有關(guān) ASP.NET AJAX 不可告人的秘密:UpdatePanel 雖易于使用,但是通信效率不高。

幾乎沒有什么辦法可讓您提高 UpdatePanel 的效率,但是您可以放棄使用 UpdatePanel,并轉(zhuǎn)而使用 ASP.NET AJAX 的其他功能來更新頁面內(nèi)容,它不僅同樣流暢,而且更加高效。它只需要多一點點力氣,但是***的結(jié)果往往讓人覺得是值得付出的,因為您可以大大降低在客戶端與服務(wù)器之間傳輸?shù)臄?shù)據(jù)量。

您還可以減少服務(wù)器上的負(fù)載。當(dāng) UpdatePanel 回調(diào)到服務(wù)器時,被回調(diào)定為目標(biāo)的頁面會完成幾乎整個生命周期 — 該頁面會被實例化,該頁面中的控件也會被實例化,并且 UpdatePanel 內(nèi)的控件也會完成一個正常呈現(xiàn)循環(huán)。那是更新該網(wǎng)頁一部分的大筆開銷。

作為示例,請考慮頁面段。它提供了一個允許用戶鍵入郵政編碼的簡單 UI,并且單擊按鈕就可以用城市和州來初始化城市和州字段。所有的控件都承載在 UpdatePanel 中,因此 Button 控件的回發(fā)被轉(zhuǎn)換為異步回調(diào),并且事件處理程序 (GetCityAndState) 會被調(diào)用到該回調(diào)內(nèi)部的服務(wù)器上。GetCityAndState(未顯示代碼)從郵政編碼文本框中讀取郵政編碼,將其轉(zhuǎn)換成城市和州,并相應(yīng)地初始化表示城市和州的 TextBox 和 DropDownList。由于這些都發(fā)生在 UpdatePanel 內(nèi)部,所以更新非常順暢,并且無閃爍。

【編輯推薦】

  1. 淺析ASP.NET Web 安全性
  2. ASP.NET的Session State
  3. 淺析IsPostBack屬性ASP.NET
  4. ASP.NET構(gòu)架與安全機制
  5. 概述ASP.NET水晶報表
責(zé)任編輯:佚名 來源: 百度空間
相關(guān)推薦

2009-07-29 13:50:26

UpdatePanelASP.NET

2009-07-22 13:08:55

拯救UpdatePanASP.NET MVC

2009-07-21 09:43:36

調(diào)用UpdatePanASP.NET

2009-07-21 09:18:02

UpdatePanelASP.NET AJA

2009-08-05 17:58:24

UpdatePanel

2009-04-01 12:00:43

ASP.NETMVC

2009-07-22 17:45:35

ASP.NET教程

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計

2009-07-29 17:11:25

ASP.NET ISA

2009-07-29 16:08:07

ASP和ASP.NET

2009-08-03 13:38:18

ASP.NET編程模型

2009-08-03 17:35:07

ASP.NET WebASP.NET編程工具

2009-07-28 09:02:32

asp.net aja

2009-12-02 09:07:45

ASP.NET 4.0

2009-08-05 13:58:26

ASP.NET Mem

2009-07-29 10:02:49

ASP.NET上傳

2009-07-24 13:41:15

ASP.NET AJA
點贊
收藏

51CTO技術(shù)棧公眾號