MemoryCache.AddOrGetExisting Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Insere uma entrada de cache na cache.
Sobrecargas
| Name | Description |
|---|---|
| AddOrGetExisting(CacheItem, CacheItemPolicy) |
Adiciona uma entrada de cache à cache usando a instância especificada CacheItem e detalhes sobre como expulsar essa entrada. |
| AddOrGetExisting(String, Object, DateTimeOffset, String) |
Adiciona uma entrada de cache na cache usando a chave especificada, um valor e um valor absoluto de expiração. |
| AddOrGetExisting(String, Object, CacheItemPolicy, String) |
Insere uma entrada de cache na cache usando a chave e o valor especificados e os detalhes especificados sobre como deve ser expulsa. |
Observações
As AddOrGetExisting sobrecargas de método são usadas para inserir uma entrada de cache no cache. Se não existir uma entrada de cache com uma chave correspondente, estes métodos inserem uma nova entrada. Se já existir uma entrada de cache com uma chave correspondente, devolvem a entrada existente.
AddOrGetExisting(CacheItem, CacheItemPolicy)
Adiciona uma entrada de cache à cache usando a instância especificada CacheItem e detalhes sobre como expulsar essa entrada.
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
Parâmetros
- item
- CacheItem
O objetivo a acrescentar.
- policy
- CacheItemPolicy
Um objeto que contém detalhes de expulsão para a entrada da cache. Este objeto oferece mais opções de despejo do que uma simples expiração absoluta.
Devoluções
Se existir uma entrada de cache com a mesma chave, a entrada de cache existente; caso contrário, null.
Exceções
A propriedade Value é null.
Tanto os valores absolutos como os valores de expiração deslizantes do CacheItemPolicy objeto são definidos para valores diferentes dos valores definidos de InfiniteAbsoluteExpiration e NoSlidingExpiration campos. A MemoryCache classe não pode definir a política de expiração com base numa combinação de uma expiração absoluta e uma expiração móvel. Apenas uma definição de expiração pode ser explicitamente definida quando se usa a MemoryCache instância. A outra definição de expiração deve ser definida como InfiniteAbsoluteExpiration campo ou NoSlidingExpiration campo.
A SlidingExpiration propriedade é definida para um valor inferior a Zero.
-ou-
A SlidingExpiration propriedade é definida para um valor superior a um ano.
-ou-
A Priority propriedade não é um valor da CacheItemPriority enumeração.
Observações
O item parâmetro fornece a chave e o valor que é usado pelo método. Se a cache tiver uma entrada de cache com a mesma chave da chave do item parâmetro, o método devolve a entrada existente como uma CacheItem instância. Se não houver entrada de cache existente, o método cria uma nova utilizando a chave e o valor fornecidos pelo item parâmetro, e com os detalhes de expulsão especificados por policy.
Warning
As Add sobrecargas do método and AddOrGetExisting não suportam a UpdateCallback propriedade. Portanto, para definir a UpdateCallback propriedade para uma entrada de cache, use o Set método overloads em vez disso.
Aplica-se a
AddOrGetExisting(String, Object, DateTimeOffset, String)
Adiciona uma entrada de cache na cache usando a chave especificada, um valor e um valor absoluto de expiração.
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
Parâmetros
- key
- String
Um identificador único para a entrada da cache adicionar.
- value
- Object
Os dados para a entrada da cache.
- absoluteExpiration
- DateTimeOffset
A data e hora fixas em que a entrada do cache expirará.
- regionName
- String
Uma região nomeada no cache à qual pode ser adicionada uma entrada de cache. Não passe um valor para este parâmetro. Este parâmetro é null por defeito, porque a MemoryCache classe não implementa regiões.
Devoluções
Se existir uma entrada de cache com a mesma chave, a entrada de cache existente; caso contrário, null.
Exceções
value não nullé .
regionName não nullé .
Tanto os valores absolutos como os valores de expiração deslizantes do CacheItemPolicy objeto são definidos para valores diferentes dos valores definidos de InfiniteAbsoluteExpiration e NoSlidingExpiration campos. A MemoryCache classe não pode definir a política de expiração com base numa combinação de uma expiração absoluta e uma expiração móvel. Apenas uma definição de expiração pode ser explicitamente definida quando se usa a MemoryCache instância. A outra definição de expiração deve ser definida como InfiniteAbsoluteExpiration ou NoSlidingExpiration
A SlidingExpiration propriedade é definida para um valor inferior a Zero.
-ou-
A SlidingExpiration propriedade é definida para um valor superior a um ano.
-ou-
A Priority propriedade não é um valor da CacheItemPriority enumeração.
Observações
Se a cache não tiver uma entrada de cache cuja chave corresponda ao key parâmetro, é criada uma nova entrada de cache e a MemoryCache.AddOrGetExisting sobrecarga do método devolve null. Se existir uma entrada de cache correspondente, a entrada existente é devolvida.
Warning
As Add sobrecargas do método and AddOrGetExisting não suportam a UpdateCallback propriedade. Portanto, para definir a UpdateCallback propriedade para uma entrada de cache, use o Set método overloads em vez disso.
Aplica-se a
AddOrGetExisting(String, Object, CacheItemPolicy, String)
Insere uma entrada de cache na cache usando a chave e o valor especificados e os detalhes especificados sobre como deve ser expulsa.
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
Parâmetros
- key
- String
Um identificador único para a entrada de cache adicionar ou obter.
- value
- Object
Os dados para a entrada da cache.
- policy
- CacheItemPolicy
Um objeto que contém detalhes de expulsão para a entrada da cache. Este objeto oferece mais opções de despejo do que uma simples expiração absoluta.
- regionName
- String
Uma região nomeada no cache à qual pode ser adicionada uma entrada de cache. Não passe um valor para este parâmetro. Por defeito, este parâmetro é null, porque a MemoryCache classe não implementa regiões.
Devoluções
Se já existir uma entrada de cache correspondente, uma entrada de cache; caso contrário, null.
Exceções
value é null.
Tanto os valores absolutos como os valores de expiração deslizantes do CacheItemPolicy objeto são definidos para valores diferentes dos valores padrão de InfiniteAbsoluteExpiration e NoSlidingExpiration. A MemoryCache classe não pode definir a política de expiração com base numa combinação de uma expiração absoluta e uma expiração deslizante. Só uma definição de expiração pode ser definida explicitamente quando usas a MemoryCache classe. A outra definição deve ser definida como InfiniteAbsoluteExpiration ou NoSlidingExpiration.
-ou-
Tanto o callback de remoção como o callback de atualização foram especificados para CacheItemPolicy. Só suporta MemoryCache usar um tipo de callback por entrada de cache.
A SlidingExpiration propriedade é definida para um valor inferior a Zero.
-ou-
Foi SlidingExpiration definido para um valor superior a um ano.
-ou-
A Priority propriedade não é um valor da CacheItemPriority enumeração.
Observações
Warning
As Add sobrecargas do método and AddOrGetExisting não suportam a UpdateCallback propriedade. Portanto, para definir a UpdateCallback propriedade para uma entrada de cache, use o Set método overloads em vez disso.