ControlCachePolicy.Duration Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt de hoeveelheid tijd opgehaald of ingesteld die items in de cache moeten blijven staan in de uitvoercache.
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
Waarde van eigenschap
Een TimeSpan die de hoeveelheid tijd aangeeft die een gebruikersbeheer moet hebben, is om in de uitvoercache te blijven. De standaardwaarde is Zero.
Uitzonderingen
Het gebruikersbeheer is niet gekoppeld aan een BasePartialCachingControl en kan niet in de cache worden opgeslagen.
– of –
De Duration eigenschap wordt buiten de initialisatie- en renderingfasen van het besturingselement ingesteld.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe een gebruikersbeheer dynamisch kan worden geladen en programmatisch kan worden gemanipuleerd tijdens runtime. Het PartialCachingAttribute kenmerk wordt toegepast op een gebruikersbeheer met de naam SimpleControl, wat betekent dat het tijdens runtime wordt verpakt door een PartialCachingControl besturingselement. De cache-instellingen van het SimpleControl object kunnen programmatisch worden bewerkt via het bijbehorende ControlCachePolicy object, dat beschikbaar is via een verwijzing naar het PartialCachingControl besturingselement waarmee het wordt verpakt. In dit voorbeeld wordt de eigenschap onderzocht tijdens de initialisatie van de pagina en wordt de vervaldatum van de Duration cache gewijzigd als aan bepaalde voorwaarden wordt voldaan. Dit voorbeeld maakt deel uit van een groter voorbeeld voor de ControlCachePolicy klasse.
<%@ 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>
Opmerkingen
Als een absoluut verloopbeleid is ingesteld met behulp van de SetSlidingExpiration methode, retourneert de Duration eigenschap de resterende tijd totdat de cachevermelding verloopt.