1
這裏是我的控件的代碼背後:高速緩存Web用戶控件的歡迎使用屬性不工作(!GRR)
<PartialCaching(60, Nothing, "UsrCtl_WebUserControl.CacheString", Nothing, True)> _
Partial Class UsrCtl_WebUserControl
Inherits System.Web.UI.UserControl
Private _CacheString As String
Public Property CacheString() As String
Get
Return _CacheString
End Get
Set(ByVal value As String)
_CacheString = value
End Set
End Property
End Class
這裏的控件的標記:
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="WebUserControl.ascx.vb" Inherits="UsrCtl_WebUserControl" %>
<span>Control Generated <%=DateTime.Now%></span>
它只是輸出電流的時間。
這裏是嵌入到網頁中的用戶控件:
<uc:wuc ID="wuc" runat="server" CacheString="A" />
而在另一頁:
<uc:wuc ID="wuc" runat="server" CacheString="B" />
按照文檔這種控制應該保持不同,60秒緩存版本爲每個值的CacheString屬性。
它不起作用 - 它緩存了60秒,但只有一個緩存副本被創建,無論我放入CacheString屬性。
任何任何想法我做錯了什麼? - 4小時後,我沒有頭髮或指甲留下 - 請將我的顯示器從磚頭上取下。
菲爾嗨, 謝謝,但如果你看過我的問題,你會看到我使用不同的頁面上的控制,而不是在同一頁上。 我需要共享=「真」,因爲這是爲了緩存頁面頁腳 - 頁面頁腳緩慢頁面頁腳! 我看不出我做錯了什麼。謝謝你的嘗試! – PapillonUK 2010-05-11 14:37:16
@PapillonUK在兩個單獨頁面上的相同控件是我如何複製它的,但現在我有點困惑 - 你希望它們在每一頁上單獨緩存,但它們都在一個通用頁腳中?你能把你的頁面標記放到你的問題中嗎?我的演示代碼是http://cid-5e6d39865220496a.skydrive.live.com/self.aspx/StackOverflow/PartialCaching.zip – PhilPursglove 2010-05-11 15:16:04
所有的代碼都在上面,我現在添加了控件的標記 - 它只顯示當前時間。這不是完整的代碼,我拿出一切,但裸露的分鐘。 我打算使用控件來緩存我網站上許多頁面上的頁腳區域。除了我公開的作爲控件屬性的一個小方面外,頁腳區域在所有頁面上都是相同的 - 因此需要通過屬性更改緩存。 嘗試在不同的頁面上使用不同的ID - 同樣的問題。不管指定的屬性值如何,緩存60秒但只有一個緩存版本。 – PapillonUK 2010-05-11 19:59:10