ControlCachePolicy.SetExpires(DateTime) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает элементу управления BasePartialCachingControl, который создает оболочку для пользовательского элемента управления, дату и время завершения кэширования.
public:
void SetExpires(DateTime expirationTime);
public void SetExpires (DateTime expirationTime);
member this.SetExpires : DateTime -> unit
Public Sub SetExpires (expirationTime As DateTime)
Параметры
Исключения
Пользовательский элемент управления не связан с элементом управления BasePartialCachingControl и не является кэшируемым.
Примеры
В следующем примере кода показано, как можно динамически загружать пользовательский элемент управления и управляться программными средствами во время выполнения. Атрибут PartialCachingAttribute применяется к пользовательскому элементу управления с именем SimpleControl
, что означает, что пользовательский элемент управления упаковывается PartialCachingControl в элемент управления во время выполнения. Параметры SimpleControl
кэширования объекта можно программно управлять с помощью связанного ControlCachePolicy с ним объекта, доступного через ссылку на PartialCachingControl элемент управления, который его упаковывает. В этом примере Duration свойство проверяется во время инициализации страницы и изменяется с помощью SetSlidingExpiration методов и SetExpires , если выполняются некоторые условия. Этот пример является частью более крупного примера, предоставленного 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
), чтобы указать политику абсолютного срока действия.