• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    ASP.NET Page緩存提高異步更新時的性能

    發布: 2008-5-07 13:40 | 作者: 網絡轉載 | 來源: 本站原創 | 查看: 288次 | 進入軟件測試論壇討論

    領測軟件測試網

     但是為什么在出現一個傳統的PostBack之前,異步PostBack都能夠正常工作呢?我懷疑這是因為ASP.NET的Page對象是在 Render時一并處理緩存的,當scriptManager替換了Page自帶的方法后,就不會對輸出內容進行緩存了。這導致了接下來的異步更新發生了錯誤。這里是我根據出現的狀況進行的猜測,哪位朋友如果了解ASP.NET Page緩存的確切情況,請不吝指教。:)

      解決問題

      說實話,如果一個頁面已經使用了緩存,我還沒有想到一個操作簡單,但又能保持其緩存特性的解決方案。另外,我甚至想合理利用這種緩存機制來提高異步更新時的性能(也就是嘗試著讓頁面緩存異步更新的內容)。我查閱了ASP.NET Page緩存的資料,作了一些嘗試,但是依舊無法得出一個比較好的解決方案?赡艿拇_是scriptManager替代頁面輸出方法造成的問題吧,既然無法在那時處理緩存,又如何能夠避免頁面緩存的問題,甚至利用緩存來提高性能呢?

      如果要讓UpdatePanel正常工作的話,只能取消頁面級別的緩存了。不過控件級別的緩存還是能夠使用的,下面的例子就可以看到控件緩存與UpdatePanel同時工作時的狀況:

      CachedControl.ascx
    <%@ Control Language="C#" AutoEventWireup="true" %> <%@ OutputCache Duration="100" VaryByParam="None" %> <%= DateTime.Now.ToString() %> CachedControl.aspx <%@ Page Language="C#" AutoEventWireup="true" %> <%@ Register Src="CachedControl.ascx" TagName="CachedControl" TagPrefix="uc1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Cached Control</title> </head> <body> <form id="form1" runat="server"> <asp:scriptManager ID="scriptManager1" runat="server"> </asp:scriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <uc1:CachedControl ID="CachedControl1" runat="server" /> <br /> <%= DateTime.Now.ToString() %> <asp:Button ID="Button1" runat="server" Text="Async PostBack" /> </ContentTemplate> </asp:UpdatePanel> <asp:Button ID="Button2" runat="server" Text="PostBack" /> </form> </body> </html>
      在這里,我們把緩存加于CachedControl控件上,打開CachedControl.aspx之后并進行多次傳統PostBack和異步PostBack都不會出現問題,從頁面上兩個不同的時間也可以看出控件的緩存生效了。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    22/2<12

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>