ControlCachePolicy.Duration Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví dobu, po kterou položky uložené v mezipaměti zůstanou ve výstupní mezipaměti.
public:
property TimeSpan Duration { TimeSpan get(); void set(TimeSpan value); };
public TimeSpan Duration { get; set; }
member this.Duration : TimeSpan with get, set
Public Property Duration As TimeSpan
Hodnota vlastnosti
Hodnota TimeSpan představující dobu, po kterou má uživatelský ovládací prvek zůstat ve výstupní mezipaměti. Výchozí hodnota je Zero.
Výjimky
Uživatelský ovládací prvek není přidružený k a není možné ho BasePartialCachingControl uložit do mezipaměti.
nebo
Vlastnost Duration je nastavena mimo inicializace a vykreslování fází ovládacího prvku.
Příklady
Následující příklad kódu ukazuje, jak lze uživatelský ovládací prvek dynamicky načíst a manipulovat programově za běhu. Atribut PartialCachingAttribute se použije u uživatelského ovládacího prvku s názvem SimpleControl, což znamená, že je zabalen ovládacím prostředkem PartialCachingControl za běhu.
SimpleControl Nastavení ukládání do mezipaměti objektu lze programově manipulovat prostřednictvím přidruženého ControlCachePolicy objektu, který je k dispozici prostřednictvím odkazu na PartialCachingControl ovládací prvek, který ho zabalí. V tomto příkladu Duration se vlastnost zkoumá během inicializace stránky a vypršení platnosti mezipaměti se změní, pokud jsou splněny některé podmínky. Tento příklad je součástí většího příkladu poskytnutého ControlCachePolicy pro třídu.
<%@ Page Language="C#" %>
<%@ Reference Control="SimpleControl.ascx" %>
<script language="C#" runat="server">
// The following example demonstrates how to load a user control dynamically at run time, and
// work with the ControlCachePolicy object associated with it.
// Loads and displays a UserControl defined in a seperate Logonform.ascx file.
// You need to have "SimpleControl.ascx" file in
// the same directory as the aspx file.
void Page_Init(object sender, System.EventArgs e) {
// Obtain a PartialCachingControl object which wraps the 'LogOnControl' user control.
PartialCachingControl pcc = LoadControl("SimpleControl.ascx") as PartialCachingControl;
// If the control is slated to expire in greater than 60 Seconds
if (pcc.CachePolicy.Duration > TimeSpan.FromSeconds(60) )
{
// Make it expire faster. Set a new expiration time to 30 seconds, and make it
// an absolute expiration if it isnt already.
pcc.CachePolicy.SetExpires(DateTime.Now.Add(TimeSpan.FromSeconds(30)));
pcc.CachePolicy.SetSlidingExpiration(false);
}
Controls.Add(pcc);
}
</script>
<%@ Page Language="VB" %>
<%@ Reference Control="SimpleControl.ascx" %>
<script language="VB" runat="server">
' The following example demonstrates how to load a user control dynamically at run time, and
' work with the ControlCachePolicy object associated with it.
' Loads and displays a UserControl defined in a seperate Logonform.ascx file.
' You need to have "SimpleControl.ascx" file in
' the same directory as the aspx file.
Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs)
' Obtain a PartialCachingControl object which wraps the 'LogOnControl' user control.
Dim pcc As PartialCachingControl
pcc = LoadControl("SimpleControl.ascx")
' If the control is slated to expire in greater than 60 Seconds
If (pcc.CachePolicy.Duration > TimeSpan.FromSeconds(60)) Then
' Make it expire faster. Set a new expiration time to 30 seconds, and make it
' an absolute expiration if it isnt already.
pcc.CachePolicy.SetExpires(DateTime.Now.Add(TimeSpan.FromSeconds(30)))
pcc.CachePolicy.SetSlidingExpiration(False)
End If
Controls.Add(pcc)
End Sub
</script>
Poznámky
Pokud je pomocí SetSlidingExpiration metody nastavena absolutní zásada vypršení platnosti, Duration vrátí vlastnost dobu zbývající do vypršení platnosti položky mezipaměti.