MemoryCache.Set Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inserisce una voce della cache nella cache.
Overload
| Nome | Descrizione |
|---|---|
| Set(CacheItem, CacheItemPolicy) |
Inserisce una voce della cache nella cache usando un'istanza CacheItem di per fornire la chiave e il valore per la voce della cache. |
| Set(String, Object, DateTimeOffset, String) |
Inserisce una voce della cache nella cache utilizzando una chiave e un valore e specifica i dettagli di scadenza in base al tempo. |
| Set(String, Object, CacheItemPolicy, String) |
Inserisce una voce della cache nella cache usando una chiave e un valore e una rimozione. |
Commenti
Se la voce specificata non esiste, viene creata. Se la voce specificata esiste, viene aggiornata.
Set(CacheItem, CacheItemPolicy)
Inserisce una voce della cache nella cache usando un'istanza CacheItem di per fornire la chiave e il valore per la voce della 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)
Parametri
- item
- CacheItem
Oggetto che rappresenta una voce della cache da inserire.
- policy
- CacheItemPolicy
Oggetto che contiene i dettagli di rimozione per la voce della cache. Questo oggetto offre più opzioni per la rimozione rispetto a una semplice scadenza assoluta.
Eccezioni
È stata passata una combinazione non valida di argomenti per la voce della cache. Ciò si verifica se nell'oggetto criteri per la voce della cache vengono impostati i dettagli di scadenza seguenti:
Se i valori di scadenza assoluti e scorrevoli dell'oggetto CacheItemPolicy vengono impostati su valori diversi dai valori predefiniti di InfiniteAbsoluteExpiration e NoSlidingExpiration . La MemoryCache classe non può impostare i criteri di scadenza in base a una scadenza assoluta e a una scadenza scorrevole. È possibile impostare in modo esplicito una sola impostazione di scadenza quando si usa la MemoryCache classe . L'altra impostazione deve essere impostata su InfiniteAbsoluteExpiration o NoSlidingExpiration proprietà .
Se per l'oggetto vengono specificati CacheItemPolicy sia il callback di rimozione che il callback di aggiornamento. La MemoryCache classe supporta solo l'uso di un tipo di callback per ogni voce della cache.
La SlidingExpiration proprietà è impostata su un valore minore di Zero.
oppure
La SlidingExpiration proprietà è impostata su un valore maggiore di un anno.
oppure
Non Priority è un valore dell'enumerazione CacheItemPriority .
Commenti
Analogamente agli overload di altri Set metodi, il Set metodo inserisce sempre un valore della cache nella cache, indipendentemente dal fatto che esista già una voce con la stessa chiave. Se la voce specificata non esiste nella cache, viene inserita una nuova voce della cache. Se la voce specificata esiste già, il relativo valore viene aggiornato.
Si applica a
Set(String, Object, DateTimeOffset, String)
Inserisce una voce della cache nella cache utilizzando una chiave e un valore e specifica i dettagli di scadenza in base al 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)
Parametri
- key
- String
Identificatore univoco per la voce della cache da inserire.
- value
- Object
Dati per la voce della cache.
- absoluteExpiration
- DateTimeOffset
Data e ora fisse in cui la voce della cache scadrà.
- regionName
- String
Area denominata nella cache in cui è possibile aggiungere una voce della cache. Non passare un valore per questo parametro. Questo parametro è null per impostazione predefinita, perché la MemoryCache classe non implementa le aree.
Eccezioni
regionName non nullè .
È stata passata una combinazione non valida di argomenti per la voce della cache. Ciò si verifica se nell'oggetto criteri per la voce della cache vengono impostati i dettagli di scadenza seguenti:
Se i valori di scadenza assoluti e scorrevoli per l'oggetto vengono impostati su CacheItemPolicy valori diversi dai valori predefiniti di InfiniteAbsoluteExpiration e NoSlidingExpiration. Ciò si verifica perché la MemoryCache classe non supporta le voci in scadenza in base a una scadenza assoluta e a una scadenza scorrevole. È possibile impostare in modo esplicito una sola impostazione di scadenza quando si usa la MemoryCache classe . L'altra impostazione deve essere impostata su InfiniteAbsoluteExpiration o NoSlidingExpiration.
Se sia il callback di rimozione che il callback di aggiornamento vengono specificati nell'oggetto CacheItemPolicy . La MemoryCache classe supporta solo l'uso di un tipo di callback per ogni voce della cache.
La SlidingExpiration proprietà è impostata su un valore minore di Zero.
oppure
La SlidingExpiration proprietà è impostata su un valore maggiore di un anno.
oppure
- La Priority proprietà non è un valore dell'enumerazione CacheItemPriority .
Commenti
Analogamente ad altri Set overload del metodo, il Set metodo inserisce sempre un valore della cache nella cache, indipendentemente dal fatto che esista già una voce con la stessa chiave. Se la voce specificata non esiste, viene inserita una nuova voce della cache. Se la voce specificata esiste, viene aggiornata.
Il absoluteExpiration parametro indica quando la voce deve essere rimossa dalla cache.
La rimozione di una voce attiva tutti i monitoraggi delle modifiche associati. Se l'elemento rimosso è stato associato a un oggetto o a un CacheItemUpdateCallback oggetto, il motivo della rimozione passato ai callback è contenuto nella Removed proprietà .CacheItemRemovedCallback
Si applica a
Set(String, Object, CacheItemPolicy, String)
Inserisce una voce della cache nella cache usando una chiave e un valore e una rimozione.
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)
Parametri
- key
- String
Identificatore univoco per la voce della cache da inserire.
- value
- Object
Dati per la voce della cache.
- policy
- CacheItemPolicy
Oggetto che contiene i dettagli di rimozione per la voce della cache. Questo oggetto offre più opzioni per la rimozione rispetto a una semplice scadenza assoluta.
- regionName
- String
Area denominata nella cache in cui è possibile aggiungere una voce della cache. Non passare un valore per questo parametro. Questo parametro è null per impostazione predefinita, perché la MemoryCache classe non implementa le aree.
Eccezioni
key è null.
oppure
value è null
oppure
Il riferimento di callback passato al metodo helper nella UpdateCallback proprietà è null.
Esiste una combinazione non valida di argomenti per la voce della cache. Ciò si verifica se nell'oggetto criteri per la voce della cache vengono impostati i dettagli di scadenza seguenti:
Se i valori di scadenza assoluti e scorrevoli per l'oggetto vengono impostati su CacheItemPolicy valori diversi dai valori predefiniti di InfiniteAbsoluteExpiration e NoSlidingExpiration. Ciò è dovuto al fatto che la MemoryCache classe non supporta le voci in scadenza in base a una scadenza assoluta e a una scadenza scorrevole. È possibile impostare in modo esplicito una sola impostazione di scadenza quando si usa la MemoryCache classe . L'altra impostazione deve essere impostata su InfiniteAbsoluteExpiration o NoSlidingExpiration.
Se nella classe vengono specificati CacheItemPolicy sia il callback di rimozione che il callback di aggiornamento. La MemoryCache classe supporta solo l'uso di un tipo di callback per ogni voce della cache.
La SlidingExpiration proprietà è impostata su un valore minore di Zero.
oppure
La SlidingExpiration proprietà è impostata su un valore maggiore di un anno.
oppure
La Priority proprietà non è un valore dell'enumerazione CacheItemPriority .
regionName non nullè .
Commenti
Analogamente ad altri Set overload del metodo, il Set metodo inserisce sempre un valore della cache nella cache, indipendentemente dal fatto che esista già una voce corrispondente. Se la voce specificata non esiste nella cache, viene inserita una nuova voce della cache. Se la voce specificata esiste, viene aggiornata.
La rimozione di una voce attiva tutti i monitoraggi delle modifiche associati. Se l'elemento rimosso è stato associato a un oggetto o a un CacheItemUpdateCallback oggetto, il motivo della rimozione passato ai callback è contenuto nella Removed proprietà .CacheItemRemovedCallback