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, DateTime) |
Инициализирует новый экземпляр CacheDependency класса, отслеживающего изменение файла или каталога. |
| CacheDependency(String) |
Инициализирует новый экземпляр CacheDependency класса, отслеживающего изменение файла или каталога. |
| CacheDependency(String[], DateTime) |
Инициализирует новый экземпляр CacheDependency класса, который отслеживает массив путей (в файлы или каталоги) для изменений и указывает время начала мониторинга изменений. |
| CacheDependency(String[], String[], CacheDependency, DateTime) |
Инициализирует новый экземпляр CacheDependency класса, который отслеживает массив путей (в файлы или каталоги), массив ключей кэша или обоих для изменений. Он также зависит от другого экземпляра CacheDependency класса и времени начала мониторинга изменений. |
| CacheDependency(String[], String[], CacheDependency) |
Инициализирует новый экземпляр CacheDependency класса, который отслеживает массив путей (в файлы или каталоги), массив ключей кэша или обоих для изменений. Он также зависит от отдельного экземпляра CacheDependency класса. |
| CacheDependency(String[], String[], DateTime) |
Инициализирует новый экземпляр CacheDependency класса, который отслеживает массив путей (в файлы или каталоги), массив ключей кэша или обоих для изменений. |
| CacheDependency(String[], String[]) |
Инициализирует новый экземпляр CacheDependency класса, который отслеживает массив путей (в файлы или каталоги), массив ключей кэша или обоих для изменений. |
| CacheDependency(String[]) |
Инициализирует новый экземпляр 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>) |
Добавляет метод Action для обработки уведомления заинтересованных лиц об изменениях этой зависимости. |
| SetUtcLastModified(DateTime) |
Помечает время последнего изменения зависимости. |
| TakeOwnership() |
Позволяет первому пользователю объявить монопольную собственность этой зависимости. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |