CacheDependency Класс

Определение

Устанавливает отношения зависимости между элементом, который хранится в объекте приложения ASP.NET Cache, и файлом, ключом кэша, массивом или другим объектом CacheDependency. Класс CacheDependency отслеживает отношения зависимости на предмет изменений, автоматически удаляя кэшированный элемент.

public ref class CacheDependency sealed : IDisposable
public ref class CacheDependency : IDisposable
public sealed class CacheDependency : IDisposable
public class CacheDependency : IDisposable
type CacheDependency = class
    interface IDisposable
Public NotInheritable Class CacheDependency
Implements IDisposable
Public Class CacheDependency
Implements IDisposable
Наследование
CacheDependency
Производный
Реализации

Примеры

В следующем примере кода показано использование HasChanged свойства , чтобы определить, изменилось ли CacheDependency с момента предыдущего запроса для элемента в Cache. Значение dt , передаваемое в параметре start , имеет значение DateTime.Now.

// Insert the cache item.
CacheDependency dep = new CacheDependency(fileName, dt);
cache.Insert("key", "value", dep);

// Check whether CacheDependency.HasChanged is true.
if (dep.HasChanged)
  Response.Write("<p>The dependency has changed.");  
else Response.Write("<p>The dependency has not changed.");
' Insert the cache item.
Dim dep As New CacheDependency(fileName, dt)
myCache.Insert("key", "value", dep)

' Check whether CacheDependency.HasChanged is true.
If dep.HasChanged Then
   Response.Write("<p>The dependency has changed.")
Else
   Response.Write("<p>The dependency has not changed.")
End If 

Комментарии

Если в кэш добавляется элемент, зависящий от другого объекта, например файла или массива файлов, зависимый элемент автоматически удаляется из кэша при изменении объекта. Например, предположим, что вы создаете DataSet объект на основе данных в XML-файле. Можно добавить в DataSet кэш с CacheDependency помощью объекта , который делает зависимым DataSet от XML-файла. Если XML-файл изменяется, DataSet объект удаляется из кэша.

Элементы с зависимостями можно добавлять в кэш приложения с помощью Add методов и Cache.Insert . Свойство нельзя использовать Item[] для добавления элементов в кэш с зависимостями.

Чтобы настроить зависимость, необходимо создать экземпляр CacheDependency класса , указав файлы, ключи или каталоги, от которых зависит элемент, а затем передать зависимость Add в метод или Cache.Insert . Экземпляр CacheDependency может представлять один файл или каталог, массив файлов или каталогов, массив файлов или каталогов вместе с массивом ключей кэша (они представляют другие элементы, хранящиеся в объекте Cache ).

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

CacheDependency()

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

CacheDependency(String)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения файла или каталога.

CacheDependency(String, DateTime)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения файла или каталога.

CacheDependency(String[])

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам).

CacheDependency(String[], DateTime)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам) и определяющий время начала отслеживания изменений.

CacheDependency(String[], String[])

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам), массива ключей кэша, или обоих сразу.

CacheDependency(String[], String[], CacheDependency)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам), массива ключей кэша, или обоих сразу. Он также становится зависимым от отдельного экземпляра класса CacheDependency.

CacheDependency(String[], String[], CacheDependency, DateTime)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам), массива ключей кэша, или обоих сразу. Он также становится зависимым от другого экземпляра класса CacheDependency и времени начала отслеживания изменений.

CacheDependency(String[], String[], DateTime)

Инициализирует новый экземпляр класса CacheDependency, отслеживающий изменения массива путей (к файлам или каталогам), массива ключей кэша, или обоих сразу.

Свойства

HasChanged

Получает значение, указывающее, изменился ли объект CacheDependency.

UtcLastModified

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

Методы

DependencyDispose()

Освобождает ресурсы, используемые классом CacheDependency и любыми классами, производными от CacheDependency.

Dispose()

Освобождает ресурсы, используемые объектом CacheDependency.

Equals(Object)

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

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

Завершает инициализацию объекта CacheDependency.

GetFileDependencies()

Возвращает зависимости файлов.

GetHashCode()

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

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

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

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

Извлекает уникальный идентификатор для объекта CacheDependency.

ItemRemoved()

Вызывается при удалении отслеживаемой записи кэша.

KeepDependenciesAlive()

Обновляет время последнего обращения к каждому элементу кэша, который зависит от этого элемента.

MemberwiseClone()

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

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

Уведомляет базовый объект CacheDependency об изменении зависимости, представленной производным классом CacheDependency.

SetCacheDependencyChanged(Action<Object,EventArgs>)

Добавляет метод действия для обработки уведомления заинтересованной стороны об изменениях в этой зависимости.

SetUtcLastModified(DateTime)

Помечает время последнего изменения зависимости.

TakeOwnership()

Позволяет первому пользователю объявлять монопольный доступ к этой зависимости.

ToString()

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

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

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

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