MemoryCache.Set Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вставляет запись кэша в кэш.
Перегрузки
| Имя | Описание |
|---|---|
| Set(CacheItem, CacheItemPolicy) |
Вставляет запись кэша в кэш с помощью экземпляра CacheItem , чтобы указать ключ и значение для записи кэша. |
| Set(String, Object, DateTimeOffset, String) |
Вставляет запись кэша в кэш с помощью ключа и значения и задает сведения о истечении срока действия на основе времени. |
| Set(String, Object, CacheItemPolicy, String) |
Вставляет запись кэша в кэш с помощью ключа и значения и вытеснения. |
Комментарии
Если указанная запись не существует, она создается. Если указанная запись существует, она обновляется.
Set(CacheItem, CacheItemPolicy)
Вставляет запись кэша в кэш с помощью экземпляра CacheItem , чтобы указать ключ и значение для записи кэша.
public:
override void Set(System::Runtime::Caching::CacheItem ^ item, System::Runtime::Caching::CacheItemPolicy ^ policy);
public override void Set(System.Runtime.Caching.CacheItem item, System.Runtime.Caching.CacheItemPolicy policy);
override this.Set : System.Runtime.Caching.CacheItem * System.Runtime.Caching.CacheItemPolicy -> unit
Public Overrides Sub Set (item As CacheItem, policy As CacheItemPolicy)
Параметры
- item
- CacheItem
Объект, представляющий запись кэша для вставки.
- policy
- CacheItemPolicy
Объект, содержащий сведения о вытеснения для записи кэша. Этот объект предоставляет больше возможностей для вытеснения, чем простой абсолютный срок действия.
Исключения
Было передано недопустимое сочетание аргументов для записи кэша. Это происходит, если в объекте политики для записи кэша заданы следующие сведения об истечении срока действия:
Если для объекта заданы абсолютные и скользящие значения CacheItemPolicy срока действия, отличные от значений InfiniteAbsoluteExpiration по умолчанию и NoSlidingExpiration полей. Класс MemoryCache не может задать политику окончания срока действия, основанную как на абсолютном истечении срока действия, так и на скользящем истечении срока действия. При использовании MemoryCache класса можно явно задать только один параметр истечения срока действия. Другой параметр должен иметь значение InfiniteAbsoluteExpiration или NoSlidingExpiration свойство.
Если для объекта указаны CacheItemPolicy обратный вызов удаления и обратный вызов обновления. Класс MemoryCache поддерживает только один тип обратного вызова для каждой записи кэша.
Для SlidingExpiration свойства задано значение меньше Zero.
–или–
Свойство SlidingExpiration имеет значение больше одного года.
–или–
Значение Priority перечисления CacheItemPriority не является.
Комментарии
Как и другие Set перегрузки методов, метод всегда помещает значение кэша в кэш независимо от того, Set существует ли запись с тем же ключом. Если указанная запись не существует в кэше, вставляется новая запись кэша. Если указанная запись уже существует, его значение обновляется.
Применяется к
Set(String, Object, DateTimeOffset, String)
Вставляет запись кэша в кэш с помощью ключа и значения и задает сведения о истечении срока действия на основе времени.
public override void Set(string key, object value, DateTimeOffset absoluteExpiration, string regionName = default);
override this.Set : string * obj * DateTimeOffset * string -> unit
Public Overrides Sub Set (key As String, value As Object, absoluteExpiration As DateTimeOffset, Optional regionName As String = Nothing)
Параметры
- key
- String
Уникальный идентификатор для вставки записи кэша.
- value
- Object
Данные для записи кэша.
- absoluteExpiration
- DateTimeOffset
Фиксированная дата и время истечения срока действия записи кэша.
- regionName
- String
Именованный регион в кэше, в который можно добавить запись кэша. Не передайте значение для этого параметра. Этот параметр по умолчанию, null так как MemoryCache класс не реализует регионы.
Исключения
regionName не nullявляется .
Было передано недопустимое сочетание аргументов для записи кэша. Это происходит, если в объекте политики для записи кэша заданы следующие сведения об истечении срока действия:
Если для объекта заданы абсолютные и скользящие значения CacheItemPolicy срока действия, отличные от значений InfiniteAbsoluteExpiration по умолчанию и NoSlidingExpiration. Это происходит из-за того, что MemoryCache класс не поддерживает истекающий срок действия, основанный как на абсолютном, так и на скользящем истечении срока действия. При использовании MemoryCache класса можно явно задать только один параметр истечения срока действия. Для другого параметра необходимо задать InfiniteAbsoluteExpiration или NoSlidingExpiration.
Если обратный вызов удаления и обратный вызов обновления указаны в CacheItemPolicy объекте. Класс MemoryCache поддерживает только один тип обратного вызова для каждой записи кэша.
Для SlidingExpiration свойства задано значение меньше Zero.
–или–
Свойство SlidingExpiration имеет значение больше одного года.
–или–
- Свойство Priority не является значением перечисления CacheItemPriority .
Комментарии
Как и другие Set перегрузки методов, метод всегда помещает значение кэша в кэш независимо от того, Set существует ли запись с тем же ключом. Если указанная запись не существует, вставляется новая запись кэша. Если указанная запись существует, она обновляется.
Параметр absoluteExpiration указывает, когда запись должна быть удалена из кэша.
Удаление записи активирует все связанные мониторы изменений. Если удаленный CacheItemUpdateCallback элемент был связан с объектом или CacheItemRemovedCallback объектом, причина удаления, передаваемого обратному вызову, содержится в свойстве Removed .
Применяется к
Set(String, Object, CacheItemPolicy, String)
Вставляет запись кэша в кэш с помощью ключа и значения и вытеснения.
public override void Set(string key, object value, System.Runtime.Caching.CacheItemPolicy policy, string regionName = default);
override this.Set : string * obj * System.Runtime.Caching.CacheItemPolicy * string -> unit
Public Overrides Sub Set (key As String, value As Object, policy As CacheItemPolicy, Optional regionName As String = Nothing)
Параметры
- key
- String
Уникальный идентификатор для вставки записи кэша.
- value
- Object
Данные для записи кэша.
- policy
- CacheItemPolicy
Объект, содержащий сведения о вытеснения для записи кэша. Этот объект предоставляет больше возможностей для вытеснения, чем простой абсолютный срок действия.
- regionName
- String
Именованный регион в кэше, в который можно добавить запись кэша. Не передайте значение для этого параметра. Этот параметр по умолчанию, null так как MemoryCache класс не реализует регионы.
Исключения
key равно null.
–или–
value равен null
–или–
Ссылка обратного вызова, переданная вспомогательному методу в свойстве UpdateCallbacknull.
Недопустимое сочетание аргументов для записи кэша существует. Это происходит, если в объекте политики для записи кэша заданы следующие сведения об истечении срока действия:
Если для объекта заданы абсолютные и скользящие значения CacheItemPolicy срока действия, отличные от значений InfiniteAbsoluteExpiration по умолчанию и NoSlidingExpiration. Это связано с тем, что MemoryCache класс не поддерживает срок действия записей на основе абсолютного и скользящего срока действия. При использовании MemoryCache класса можно явно задать только один параметр истечения срока действия. Для другого параметра необходимо задать InfiniteAbsoluteExpiration или NoSlidingExpiration.
Если обратный вызов удаления и обратный вызов обновления указаны в CacheItemPolicy классе. Класс MemoryCache поддерживает только один тип обратного вызова для каждой записи кэша.
Для SlidingExpiration свойства задано значение меньше Zero.
–или–
Свойство SlidingExpiration имеет значение больше одного года.
–или–
Свойство Priority не является значением перечисления CacheItemPriority .
regionName не nullявляется .
Комментарии
Как и другие Set перегрузки методов, метод всегда помещает значение кэша в кэш независимо от того, Set существует ли соответствующая запись. Если указанная запись не существует в кэше, вставляется новая запись кэша. Если указанная запись существует, она обновляется.
Удаление записи активирует все связанные мониторы изменений. Если удаленный CacheItemUpdateCallback элемент был связан с объектом или CacheItemRemovedCallback объектом, причина удаления, передаваемого обратному вызову, содержится в свойстве Removed .