2009-10-10 91 views
1

我打過電話UC_Test一個asp.net用戶控件已經暴露了公共財產稱爲param1.It在aspx頁面託管型和B用戶控制的不同實例如何緩存取決於屬性值

在頁面A上,參數1設置爲10,頁面B上參數1設置爲20. 根據參數值,控制用戶控件的格式。

我希望頁面A和頁面B緩存分離用戶控件的實例。

由於okw指出,我想使用緩存出於性能原因,而不是持久values.Please讓我知道我如何實現這一點。

我可以使用Shared = false來達到這個目的嗎?例如?

感謝您的閱讀。

+0

你的「緩存」的目的是與性能相關的或用於存儲值的目的是什麼? – 2009-10-10 06:16:56

回答

0

最直接的方法是使用一個HiddenField來保存適當的值。在表單提交或回傳呼叫期間從頁面讀回它。

0

你可以這樣做:

public int MyProperty 
{ 
    get 
    { 
     return (int)ViewState[this.UniqueID + "_MyProperty"]; 
    } 

    set 
    { 
     ViewState[this.UniqueID + "_MyProperty"] = value; 
    } 
} 

的ViewState在這種情況下是可以互換使用HttpContext.Current.Cache或HttpContext.Current.Session。你只需要確保檢查是否有空值。

希望它有幫助。