CacheDependency Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Устанавливает связь зависимостей между элементом, хранящимся в объекте приложения Cache ASP.NET, файле, ключе кэша, массиве одного или другого 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) |