ControlCachePolicy.SetSlidingExpiration(Boolean) Método

Definición

Indica al control BasePartialCachingControl que contiene el control de usuario que se configure la entrada en caché del control de usuario para utilizarse una expiración variable o absoluta.

public:
 void SetSlidingExpiration(bool useSlidingExpiration);
public void SetSlidingExpiration (bool useSlidingExpiration);
member this.SetSlidingExpiration : bool -> unit
Public Sub SetSlidingExpiration (useSlidingExpiration As Boolean)

Parámetros

useSlidingExpiration
Boolean

true para utilizarse una expiración variable en lugar de una expiración absoluta para la entrada en caché; en caso contrario, false.

Excepciones

El control de usuario no está asociado a un control BasePartialCachingControl y no se puede almacenar en la memoria caché.

Ejemplos

En el ejemplo de código siguiente se muestra cómo se puede cargar un control de usuario de forma dinámica y manipulada mediante programación en tiempo de ejecución. Un control de usuario denominado SimpleControl está decorado con un PartialCachingAttribute atributo , lo que significa que se ajusta mediante un PartialCachingControl control en tiempo de ejecución. La SimpleControl configuración de almacenamiento en caché del objeto se puede manipular mediante programación a través de su objeto asociado ControlCachePolicy , que está disponible a través de una referencia al PartialCachingControl control que lo encapsula. En este ejemplo, la configuración de almacenamiento en caché se examina durante la inicialización de la página y cambia si se cumplen algunas condiciones. Este ejemplo forma parte de un ejemplo más grande proporcionado para la ControlCachePolicy clase .

<%@ 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>

Comentarios

Use los SetExpires métodos y SetSlidingExpiration (pasando true) para indicar al BasePartialCachingControl control que encapsula el control de usuario para usar una directiva de almacenamiento en caché de expiración deslizante en lugar de una directiva de expiración absoluta. Use el SetExpires método y el SetSlidingExpiration método (pasando false) para especificar una directiva de expiración absoluta.

Se aplica a

Consulte también