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