Поделиться через


ControlCachePolicy.SetSlidingExpiration(Boolean) Метод

Определение

Указывает элементу управления BasePartialCachingControl, который создает оболочку для пользовательского элемента управления, задать для последнего скользящее или абсолютное завершение времени кэширования.

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

Параметры

useSlidingExpiration
Boolean

Значение true, чтобы использовать скользящее, а не абсолютное завершение времени кэширования, в противном случае — значение false.

Исключения

Пользовательский элемент управления не связан с элементом управления BasePartialCachingControl и не является кэшируемым.

Примеры

В следующем примере кода показано, как пользовательский элемент управления может загружаться динамически и управляться программными средствами во время выполнения. Пользовательский элемент управления с именем SimpleControl декорирован атрибутом PartialCachingAttribute , что означает, что он упаковывается элементом PartialCachingControl управления во время выполнения. Параметрами SimpleControl кэширования объекта можно программно управлять с помощью связанного ControlCachePolicy с ним объекта, который доступен через ссылку на PartialCachingControl элемент управления, который его заключает в оболочку. В этом примере параметры кэширования проверяются во время инициализации страницы и изменяются при соблюдении некоторых условий. Этот пример является частью более крупного примера, предоставленного ControlCachePolicy для класса .

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

Комментарии

SetExpires Используйте методы и SetSlidingExpiration (передача true), чтобы указать BasePartialCachingControl элементу управления, который заключает в оболочку пользовательский элемент управления, использовать политику кэширования скользящего срока действия вместо политики абсолютного срока действия. SetExpires Используйте метод и SetSlidingExpiration метод (передавая false) для указания политики абсолютного срока действия.

Применяется к

См. также раздел