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


CacheItemPolicy Класс

Определение

Представляет набор подробностей об удалении и сроке действия конкретной записи кэша.

public ref class CacheItemPolicy
public class CacheItemPolicy
type CacheItemPolicy = class
Public Class CacheItemPolicy
Наследование
CacheItemPolicy

Примеры

В следующем примере показано, как создать элемент кэша в памяти, который отслеживает путь к текстовому файлу. Кэш создает CacheItemPolicy объект и задает AbsoluteExpiration свойство для вытеснения кэша через 60 секунд.

Protected Sub Button1_Click(ByVal sender As Object, _  
            ByVal e As System.EventArgs) Handles Button1.Click  
    Dim cache As ObjectCache = MemoryCache.Default  
    Dim fileContents As String = TryCast(cache("filecontents"), _  
            String)  
    If fileContents Is Nothing Then  
        Dim policy As New CacheItemPolicy()  
        policy.AbsoluteExpiration = _  
            DateTimeOffset.Now.AddSeconds(60.0)  
        Dim filePaths As New List(Of String)()  
     Dim cachedFilePath As String = Server.MapPath("~") & _  
         "\cacheText.txt"  
        filePaths.Add(cachedFilePath)  
        policy.ChangeMonitors.Add(New _  
            HostFileChangeMonitor(filePaths))  

        ' Fetch the file contents.  
        fileContents = File.ReadAllText(cachedFilePath)  
        cache.Set("filecontents", fileContents, policy)  
    End If  
    Label1.Text = fileContents  
End Sub  
protected void Button1_Click(object sender, EventArgs e)  
    {  
        ObjectCache cache = MemoryCache.Default;  
            string fileContents = cache["filecontents"] as string;  
            if (fileContents == null)  
            {  
                CacheItemPolicy policy = new CacheItemPolicy();  
                policy.AbsoluteExpiration =   
                    DateTimeOffset.Now.AddSeconds(60.0);  

                List<string> filePaths = new List<string>();  
             string cachedFilePath = Server.MapPath("~") +   
                 "\\cacheText.txt";  
             filePaths.Add(cachedFilePath);  

                policy.ChangeMonitors.Add(new   
                    HostFileChangeMonitor(filePaths));  

                // Fetch the file contents.  
                fileContents = File.ReadAllText(cachedFilePath);  

                cache.Set("filecontents", fileContents, policy);  

            }  

            Label1.Text = fileContents;  
        }  

Комментарии

Экземпляр CacheItemPolicy содержит сведения, которые можно связать с записью кэша. Например, когда запись кэша будет удалена из кэша, CacheEntryUpdateArguments объект передается методу обратного вызова. Свойство UpdatedCacheItemPolicyCacheEntryUpdateArguments объекта может передавать ссылку CacheItemPolicy на экземпляр, которая может включать сведения о вытеснениях и истечении срока действия записи кэша.

Некоторые методы в классах MemoryCache и ObjectCache принимают CacheItemPolicy экземпляр для описания политики вытеснения или истечения срока действия.

Примечания для тех, кто наследует этот метод

Тип CacheItemPolicy незамечен, чтобы разработчики пользовательского кэша могли расширить его.

Конструкторы

CacheItemPolicy()

Инициализирует новый экземпляр класса CacheItemPolicy.

Свойства

AbsoluteExpiration

Получает или задает значение, указывающее, следует ли вытеснить запись кэша в указанный момент.

ChangeMonitors

Получает коллекцию объектов ChangeMonitor, связанных с записью кэша.

Priority

Получает или задает параметр приоритета, на основании которого принимается решение об удалении записи кэша.

RemovedCallback

Получает или задает ссылку на делегат CacheEntryRemovedCallback, вызываемый после удаления записи из кэша.

SlidingExpiration

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

UpdateCallback

Получает или задает ссылку на делегат CacheEntryUpdateCallback, вызываемый перед удалением записи из кэша.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

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