MemoryCache.AddOrGetExisting 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
AddOrGetExisting(CacheItem, CacheItemPolicy) |
Aggiunge una voce della cache nella cache usando l'istanza di CacheItem specificata e i dettagli sulla modalità di eliminazione della voce. |
AddOrGetExisting(String, Object, DateTimeOffset, String) |
Aggiunge una voce della cache nella cache usando la chiave e il valore specificati e un valore di scadenza assoluto. |
AddOrGetExisting(String, Object, CacheItemPolicy, String) |
Inserisce una voce della cache nella cache usando la chiave e il valore specificati e i dettagli sulla modalità di eliminazione della voce specificati. |
Commenti
Gli overload del AddOrGetExisting metodo vengono usati per inserire una voce della cache nella cache. Se non esiste una voce della cache con una chiave corrispondente, questi metodi inseriscono una nuova voce. Se esiste già una voce della cache con una chiave corrispondente, restituiscono la voce esistente.
AddOrGetExisting(CacheItem, CacheItemPolicy)
- Origine:
- MemoryCache.cs
- Origine:
- MemoryCache.cs
Aggiunge una voce della cache nella cache usando l'istanza di CacheItem specificata e i dettagli sulla modalità di eliminazione della voce.
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
Parametri
- item
- CacheItem
Oggetto da aggiungere.
- policy
- CacheItemPolicy
Oggetto contenente i dettagli sull'eliminazione per la voce della cache. Questo oggetto fornisce più opzioni per l'eliminazione di una semplice scadenza assoluta.
Restituisce
Se esiste una voce della cache con la stessa chiave, la voce della cache esistente; in caso contrario, null
.
Eccezioni
La proprietà Value è null
.
Nell'oggetto CacheItemPolicy sia i valori di scadenza assoluti che quelli variabili sono impostati sui valori diversi da quelli predefiniti dei campi InfiniteAbsoluteExpiration e NoSlidingExpiration. La classe MemoryCache non può impostare criteri di scadenza basati su una combinazione di una scadenza assoluta e una scadenza variabile. È possibile impostare in modo esplicito solo un'impostazione di scadenza quando si utilizza l'istanza MemoryCache. L'altra impostazione di scadenza deve essere impostata sul campo InfiniteAbsoluteExpiration o sul campo NoSlidingExpiration.
La proprietà SlidingExpiration è impostata su un valore minore di Zero.
-oppure-
La proprietà SlidingExpiration è impostata su un valore superiore a un anno.
-oppure-
La proprietà Priority non è un valore dell'enumerazione CacheItemPriority.
Commenti
Il item
parametro fornisce la chiave e il valore utilizzato dal metodo . Se nella cache è presente una voce della cache con la stessa chiave del item
parametro, il metodo restituisce la voce esistente come CacheItem istanza. Se non è presente alcuna voce della cache, il metodo ne crea uno nuovo usando la chiave e il valore forniti dal item
parametro e con i dettagli di rimozione specificati da policy
.
Avviso
Gli overload del metodo Add e AddOrGetExisting non supportano la proprietà UpdateCallback. Pertanto, per impostare la proprietà UpdateCallback per una voce della cache, utilizzare invece gli overload del metodo Set.
Si applica a
AddOrGetExisting(String, Object, DateTimeOffset, String)
- Origine:
- MemoryCache.cs
- Origine:
- MemoryCache.cs
Aggiunge una voce della cache nella cache usando la chiave e il valore specificati e un valore di scadenza assoluto.
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
Parametri
- key
- String
Identificatore univoco della voce della cache da aggiungere.
- value
- Object
Dati per la voce della cache.
- absoluteExpiration
- DateTimeOffset
Data e ora fisse in cui scadrà la voce della cache.
- regionName
- String
Area denominata nella cache alla quale può essere aggiunta una voce della cache. Non passare alcun valore per questo parametro. Questo parametro è null
per impostazione predefinita, perché la classe MemoryCache non implementa le aree.
Restituisce
Se esiste una voce della cache con la stessa chiave, la voce della cache esistente; in caso contrario, null
.
Eccezioni
value
non è null
.
regionName
non è null
.
Nell'oggetto CacheItemPolicy sia i valori di scadenza assoluti che quelli variabili sono impostati sui valori diversi da quelli predefiniti dei campi InfiniteAbsoluteExpiration e NoSlidingExpiration. La classe MemoryCache non può impostare criteri di scadenza basati su una combinazione di una scadenza assoluta e una scadenza variabile. È possibile impostare in modo esplicito solo un'impostazione di scadenza quando si utilizza l'istanza MemoryCache. L'altra impostazione di scadenza deve essere impostata su InfiniteAbsoluteExpiration o NoSlidingExpiration
La proprietà SlidingExpiration è impostata su un valore minore di Zero.
-oppure-
La proprietà SlidingExpiration è impostata su un valore superiore a un anno.
-oppure-
La proprietà Priority non è un valore dell'enumerazione CacheItemPriority.
Commenti
Se nella cache non è presente una voce della cache la cui chiave corrisponde al key
parametro , viene creata una nuova voce della cache e l'overload del MemoryCache.AddOrGetExisting metodo restituisce null
. Se esiste una voce della cache corrispondente, viene restituita la voce esistente.
Avviso
Gli overload del metodo Add e AddOrGetExisting non supportano la proprietà UpdateCallback. Pertanto, per impostare la proprietà UpdateCallback per una voce della cache, utilizzare invece gli overload del metodo Set.
Si applica a
AddOrGetExisting(String, Object, CacheItemPolicy, String)
- Origine:
- MemoryCache.cs
- Origine:
- MemoryCache.cs
Inserisce una voce della cache nella cache usando la chiave e il valore specificati e i dettagli sulla modalità di eliminazione della voce specificati.
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
Parametri
- key
- String
Identificatore univoco della voce della cache da aggiungere o ottenere.
- value
- Object
Dati per la voce della cache.
- policy
- CacheItemPolicy
Oggetto contenente i dettagli sull'eliminazione per la voce della cache. Questo oggetto fornisce più opzioni per l'eliminazione di una semplice scadenza assoluta.
- regionName
- String
Area denominata nella cache alla quale può essere aggiunta una voce della cache. Non passare alcun valore per questo parametro. Per impostazione predefinita, questo parametro è null
, in quanto la classe MemoryCache non implementa le aree.
Restituisce
Se esiste già una voce della cache corrispondente, una voce della cache; in caso contrario, null
.
Eccezioni
value
è null
.
Nell'oggetto CacheItemPolicy sia i valori di scadenza assoluti che quelli variabili sono impostati sui valori diversi da quelli predefiniti dei campi InfiniteAbsoluteExpiration e NoSlidingExpiration. La classe MemoryCache non può impostare criteri di scadenza basati su una combinazione di una scadenza assoluta e di una scadenza variabile. Quando si utilizza la classe MemoryCache, è possibile configurare esplicitamente solo un'impostazione di scadenza. L'altra impostazione deve essere InfiniteAbsoluteExpiration o NoSlidingExpiration.
-oppure-
Sia il callback di rimozione sia il callback di aggiornamento sono stati specificati per CacheItemPolicy. MemoryCache supporta solo l'utilizzo di un tipo di callback per voce della cache.
La proprietà SlidingExpiration è impostata su un valore minore di Zero.
-oppure-
SlidingExpiration è stato impostato su un valore maggiore di un anno.
-oppure-
La proprietà Priority non è un valore dell'enumerazione CacheItemPriority.
Commenti
Avviso
Gli overload del metodo Add e AddOrGetExisting non supportano la proprietà UpdateCallback. Pertanto, per impostare la proprietà UpdateCallback per una voce della cache, utilizzare invece gli overload del metodo Set.