用引數來控制使用者控制項的快取
左直拳
使用者控制項有個好處就是可以利用快取,在不實施快取的頁面中實現部分快取。
可是有時候同乙個使用者控制項,放在不同的頁面,又需要它可以表現出不同的樣式,或提供不同的功能。
這時跟快取有衝突嗎?
偉大的微軟告訴我們,可以在控制項快取設定中宣告
varybycontrol
或varybyparam。
varybyparam
我還沒用過,估計就是根據包含該控制項的頁面中指定的引數值,如
?f=1&u=0
之類,針對不同值,快取不同的版本。
我用的是
varybycontrol
,在控制項內或包含該控制項的頁面內放置乙個其他控制項,如文字框(textbox),
varybycontrol=
「該控制項的id」,這樣這個控制項的值不同,使用者控制項的快取就不同。
然而直接訪問使用者控制項內部的控制項是不方便的,或者也不嚴謹。可以在使用者控制項內設定乙個屬性,通過該屬性來間接訪問和控制該控制項。如:
頁面:<%
@outputcache
duration
="1800"
varybycontrol
="txtcssstyle"
shared
="true"
%>……
<
input
type
="hidden"
id="txtcssstyle"
runat
="server"
value
=""/>
……<%
if (cssstyle != "2")
else%>
**:#region
屬性public
string cssstyle
set}
#endregion
呼叫頁面1:
<
uc2:
directshow
id="directshow1"
runat
="server"
cssstyle
="1"
/>
呼叫頁面2:
<
uc2:
directshow
id="directshow1"
runat
="server"
cssstyle
="2"
/>
這樣在第一次開啟頁面1和頁面2時,就各自獲得乙份快取,並且按照不同的要求,表現出不同的樣式和動作。
用引數來控制使用者控制項的快取
用引數來控制使用者控制項的快取 左直拳 使用者控制項有個好處就是可以利用快取,在不實施快取的頁面中實現部分快取。可是有時候同乙個使用者控制項,放在不同的頁面,又需要它可以表現出不同的樣式,或提供不同的功能。這時跟快取有衝突嗎?偉大的微軟告訴我們,可以在控制項快取設定中宣告 varybycontrol...
用PHP控制使用者瀏覽器快取!
你寫的php程式是否高效?你是否會擔心自己的程式太龐雜,執行速度很慢?你是否用過php動態生成?其實每種瀏覽器都有快取策略,會暫時將每乙個瀏覽過的檔案快取在乙個特殊的資料夾裡。我們就可以在使用者重複提交頁面請求的時候,告訴使用者這個頁面沒有改變,可以呼叫快取。那我們怎麼知道使用者有沒有這個頁面的快取...
如何為使用者控制項增加自定義引數快取
路人甲 我有好幾個ascx,它們所生成的頁面要依賴於某乙個session變數,即session不同,生成的頁面也不同,這個session變數共有6種值,請問如何為這種ascx加上快取呢?truly 請看 ascx上增加自定義快取引數 outputcache duration 30 varybypar...