MemoryCache.Set Método

Definição

Insere uma entrada de cache no cache.

Sobrecargas

Nome Description
Set(CacheItem, CacheItemPolicy)

Insere uma entrada de cache no cache usando uma CacheItem instância para fornecer a chave e o valor da entrada de cache.

Set(String, Object, DateTimeOffset, String)

Insere uma entrada de cache no cache usando uma chave e um valor e especifica detalhes de expiração baseados em tempo.

Set(String, Object, CacheItemPolicy, String)

Insere uma entrada de cache no cache usando uma chave e um valor e remoção.

Comentários

Se a entrada especificada não existir, ela será criada. Se a entrada especificada existir, ela será atualizada.

Set(CacheItem, CacheItemPolicy)

Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs

Insere uma entrada de cache no cache usando uma CacheItem instância para fornecer a chave e o valor da entrada de cache.

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)

Parâmetros

item
CacheItem

Um objeto que representa uma entrada de cache a ser inserida.

policy
CacheItemPolicy

Um objeto que contém detalhes de remoção para a entrada de cache. Esse objeto fornece mais opções de remoção do que uma expiração absoluta simples.

Exceções

item é null.

- ou -

A propriedade Key é null.

- ou -

A propriedade Value é null.

Uma combinação inválida de argumentos para a entrada de cache foi passada. Isso ocorrerá se os seguintes detalhes de expiração forem definidos no objeto de política para a entrada de cache:

  • Se os valores de expiração absoluta e deslizante do CacheItemPolicy objeto forem definidos como valores diferentes dos padrões de e InfiniteAbsoluteExpiration camposNoSlidingExpiration. A MemoryCache classe não pode definir a política de expiração com base em uma expiração absoluta e uma expiração deslizante. Somente uma configuração de expiração pode ser definida explicitamente quando você usa a MemoryCache classe. A outra configuração deve ser definida InfiniteAbsoluteExpiration como ou NoSlidingExpiration propriedade.

  • Se o retorno de chamada de remoção e o retorno de chamada de atualização forem especificados para CacheItemPolicy o objeto. A MemoryCache classe só dá suporte ao uso de um tipo de retorno de chamada por entrada de cache.

A SlidingExpiration propriedade é definida como um valor menor que Zero.

- ou -

A SlidingExpiration propriedade é definida como um valor maior que um ano.

- ou -

Não Priority é um valor da CacheItemPriority enumeração.

Comentários

Como outras Set sobrecargas de método, o Set método sempre coloca um valor de cache no cache, independentemente de já existir uma entrada que tenha a mesma chave. Se a entrada especificada não existir no cache, uma nova entrada de cache será inserida. Se a entrada especificada já existir, seu valor será atualizado.

Aplica-se a

Set(String, Object, DateTimeOffset, String)

Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs

Insere uma entrada de cache no cache usando uma chave e um valor e especifica detalhes de expiração baseados em tempo.

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)

Parâmetros

key
String

Um identificador exclusivo para a entrada de cache a ser inserida.

value
Object

Os dados da entrada de cache.

absoluteExpiration
DateTimeOffset

A data e a hora fixas em que a entrada de cache expirará.

regionName
String

Uma região nomeada no cache à qual uma entrada de cache pode ser adicionada. Não passe um valor para esse parâmetro. Esse parâmetro é null por padrão, porque a MemoryCache classe não implementa regiões.

Exceções

regionName não nullé .

key é null.

- ou -

value é null.

  • Uma combinação inválida de argumentos para a entrada de cache foi passada. Isso ocorrerá se os seguintes detalhes de expiração forem definidos no objeto de política para a entrada de cache:

  • Se os valores de expiração absoluta e deslizante no CacheItemPolicy objeto forem definidos como valores diferentes dos padrões de InfiniteAbsoluteExpiration e NoSlidingExpiration. Isso ocorre porque a classe não dá suporte a MemoryCache entradas expiradas com base em uma expiração absoluta e deslizante. Somente uma configuração de expiração pode ser definida explicitamente quando você usa a MemoryCache classe. A outra configuração deve ser definida como InfiniteAbsoluteExpiration ou NoSlidingExpiration.

  • Se o retorno de chamada de remoção e o retorno de chamada de atualização forem especificados no CacheItemPolicy objeto. A MemoryCache classe só dá suporte ao uso de um tipo de retorno de chamada por entrada de cache.

A SlidingExpiration propriedade é definida como um valor menor que Zero.

- ou -

A SlidingExpiration propriedade é definida como um valor maior que um ano.

- ou -

Comentários

Como outras Set sobrecargas de método, o Set método sempre coloca um valor de cache no cache, independentemente de uma entrada já existir com a mesma chave. Se a entrada especificada não existir, uma nova entrada de cache será inserida. Se a entrada especificada existir, ela será atualizada.

O absoluteExpiration parâmetro indica quando a entrada deve ser removida do cache.

A remoção de uma entrada dispara todos os monitores de alteração associados. Se o item removido foi associado a um CacheItemUpdateCallback objeto ou CacheItemRemovedCallback objeto, o motivo da remoção que é passado para os retornos de chamada está contido na Removed propriedade.

Aplica-se a

Set(String, Object, CacheItemPolicy, String)

Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs
Origem:
MemoryCache.cs

Insere uma entrada de cache no cache usando uma chave e um valor e remoção.

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)

Parâmetros

key
String

Um identificador exclusivo para a entrada de cache a ser inserida.

value
Object

Os dados da entrada de cache.

policy
CacheItemPolicy

Um objeto que contém detalhes de remoção para a entrada de cache. Esse objeto fornece mais opções de remoção do que uma expiração absoluta simples.

regionName
String

Uma região nomeada no cache à qual uma entrada de cache pode ser adicionada. Não passe um valor para esse parâmetro. Esse parâmetro é null por padrão, porque a MemoryCache classe não implementa regiões.

Exceções

key é null.

- ou -

value é null

- ou -

A referência de retorno de chamada que foi passada para o método auxiliar na UpdateCallback propriedade é null.

  • Existe uma combinação inválida de argumentos para a entrada de cache. Isso ocorrerá se os seguintes detalhes de expiração forem definidos no objeto de política para a entrada de cache:

  • Se os valores de expiração absoluta e deslizante no CacheItemPolicy objeto forem definidos como valores diferentes dos padrões de InfiniteAbsoluteExpiration e NoSlidingExpiration. Isso ocorre porque a MemoryCache classe não dá suporte a entradas expiradas com base em uma expiração absoluta e deslizante. Somente uma configuração de expiração pode ser definida explicitamente quando você usa a MemoryCache classe. A outra configuração deve ser definida como InfiniteAbsoluteExpiration ou NoSlidingExpiration.

  • Se o retorno de chamada de remoção e o retorno de chamada de atualização forem especificados na CacheItemPolicy classe. A MemoryCache classe só dá suporte ao uso de um tipo de retorno de chamada por entrada de cache.

A SlidingExpiration propriedade é definida como um valor menor que Zero.

- ou -

A SlidingExpiration propriedade é definida como um valor maior que um ano.

- ou -

A Priority propriedade não é um valor da CacheItemPriority enumeração.

regionName não nullé .

Comentários

Como outras Set sobrecargas de método, o Set método sempre coloca um valor de cache no cache, independentemente de já existir uma entrada correspondente. Se a entrada especificada não existir no cache, uma nova entrada de cache será inserida. Se a entrada especificada existir, ela será atualizada.

A remoção de uma entrada dispara todos os monitores de alteração associados. Se o item removido foi associado a um CacheItemUpdateCallback objeto ou CacheItemRemovedCallback objeto, o motivo da remoção que é passado para os retornos de chamada está contido na Removed propriedade.

Aplica-se a