Freigeben über


MemoryCache.AddOrGetExisting Methode

Definition

Fügt einen Cacheeintrag in den Cache ein.

Überlädt

Name Beschreibung
AddOrGetExisting(CacheItem, CacheItemPolicy)

Fügt einen Cacheeintrag mithilfe der angegebenen CacheItem Instanz und Details zum Entfernen des Eintrags in den Cache hinzu.

AddOrGetExisting(String, Object, DateTimeOffset, String)

Fügt einen Cacheeintrag mithilfe des angegebenen Schlüssels und eines Werts und eines absoluten Ablaufwerts in den Cache ein.

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Fügt einen Cacheeintrag mithilfe des angegebenen Schlüssels und Werts in den Cache ein, und die angegebenen Details, wie er entfernt werden soll.

Hinweise

Die AddOrGetExisting Methodenüberladungen werden verwendet, um einen Cacheeintrag in den Cache einzufügen. Wenn kein Cacheeintrag mit einem übereinstimmenden Schlüssel vorhanden ist, fügen diese Methoden einen neuen Eintrag ein. Wenn bereits ein Cacheeintrag mit einem übereinstimmenden Schlüssel vorhanden ist, geben sie den vorhandenen Eintrag zurück.

AddOrGetExisting(CacheItem, CacheItemPolicy)

Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs

Fügt einen Cacheeintrag mithilfe der angegebenen CacheItem Instanz und Details zum Entfernen des Eintrags in den Cache hinzu.

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

Parameter

item
CacheItem

Das hinzuzufügende Objekt.

policy
CacheItemPolicy

Ein Objekt, das Entfernungsdetails für den Cacheeintrag enthält. Dieses Objekt bietet mehr Optionen für die Entfernung als ein einfaches absolutes Ablaufen.

Gibt zurück

Wenn ein Cacheeintrag mit demselben Schlüssel vorhanden ist, besteht der vorhandene Cacheeintrag; andernfalls . null

Ausnahmen

Die Value Eigenschaft ist null.

Sowohl die absoluten als auch die gleitenden Ablaufwerte für das CacheItemPolicy Objekt werden auf andere Werte als die Standardwerte InfiniteAbsoluteExpiration und NoSlidingExpiration Felder festgelegt. Die MemoryCache Klasse kann keine Ablaufrichtlinie basierend auf einer Kombination aus einem absoluten Ablauf und einem gleitenden Ablauf festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache Instanz verwenden. Die andere Ablaufeinstellung muss auf InfiniteAbsoluteExpiration Feld oder NoSlidingExpiration Feld festgelegt werden.

Die SlidingExpiration Eigenschaft wird auf einen Wert festgelegt, der kleiner als Zeroist.

- oder -

Die SlidingExpiration Eigenschaft wird auf einen Wert festgelegt, der größer als ein Jahr ist.

- oder -

Die Priority Eigenschaft ist kein Wert der CacheItemPriority Enumeration.

Hinweise

Der item Parameter liefert den Schlüssel und den Wert, der von der Methode verwendet wird. Wenn der Cache über einen Cacheeintrag mit demselben Schlüssel wie der Schlüssel des item Parameters verfügt, gibt die Methode den vorhandenen Eintrag als CacheItem Instanz zurück. Wenn kein Cacheeintrag vorhanden ist, erstellt die Methode mithilfe des schlüssels und werts, der item vom Parameter angegeben wird, und mit den durch policyden Parameter angegebenen Entfernungsdetails ein neues.

Warnung

Die Add Überladungen und AddOrGetExisting Methoden unterstützen die UpdateCallback Eigenschaft nicht. Verwenden Sie daher stattdessen die Set Methodenüberladungen, um die UpdateCallback Eigenschaft für einen Cacheeintrag festzulegen.

Gilt für:

AddOrGetExisting(String, Object, DateTimeOffset, String)

Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs

Fügt einen Cacheeintrag mithilfe des angegebenen Schlüssels und eines Werts und eines absoluten Ablaufwerts in den Cache ein.

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

Parameter

key
String

Ein eindeutiger Bezeichner für den hinzuzufügenden Cacheeintrag.

value
Object

Die Daten für den Cacheeintrag.

absoluteExpiration
DateTimeOffset

Das feste Datum und die Uhrzeit, zu dem der Cacheeintrag abläuft.

regionName
String

Ein benannter Bereich im Cache, dem ein Cacheeintrag hinzugefügt werden kann. Übergeben Sie keinen Wert für diesen Parameter. Dieser Parameter ist null standardmäßig, da die MemoryCache Klasse keine Regionen implementiert.

Gibt zurück

Wenn ein Cacheeintrag mit demselben Schlüssel vorhanden ist, besteht der vorhandene Cacheeintrag; andernfalls . null

Ausnahmen

value ist nicht null.

regionName ist nicht null.

Sowohl die absoluten als auch die gleitenden Ablaufwerte für das CacheItemPolicy Objekt werden auf andere Werte als die Standardwerte InfiniteAbsoluteExpiration und NoSlidingExpiration Felder festgelegt. Die MemoryCache Klasse kann keine Ablaufrichtlinie basierend auf einer Kombination aus einem absoluten Ablauf und einem gleitenden Ablauf festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache Instanz verwenden. Die andere Ablaufeinstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration

Die SlidingExpiration Eigenschaft wird auf einen Wert festgelegt, der kleiner als Zeroist.

- oder -

Die SlidingExpiration Eigenschaft wird auf einen Wert festgelegt, der größer als ein Jahr ist.

- oder -

Die Priority Eigenschaft ist kein Wert der CacheItemPriority Enumeration.

Hinweise

Wenn der Cache keinen Cacheeintrag enthält, dessen Schlüssel dem key Parameter entspricht, wird ein neuer Cacheeintrag erstellt, und die MemoryCache.AddOrGetExisting Methodenüberladung wird zurückgegeben null. Wenn ein übereinstimmenden Cacheeintrag vorhanden ist, wird der vorhandene Eintrag zurückgegeben.

Warnung

Die Add Überladungen und AddOrGetExisting Methoden unterstützen die UpdateCallback Eigenschaft nicht. Verwenden Sie daher stattdessen die Set Methodenüberladungen, um die UpdateCallback Eigenschaft für einen Cacheeintrag festzulegen.

Gilt für:

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs
Quelle:
MemoryCache.cs

Fügt einen Cacheeintrag mithilfe des angegebenen Schlüssels und Werts in den Cache ein, und die angegebenen Details, wie er entfernt werden soll.

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

Parameter

key
String

Ein eindeutiger Bezeichner für den Cacheeintrag, der hinzugefügt oder abgerufen werden soll.

value
Object

Die Daten für den Cacheeintrag.

policy
CacheItemPolicy

Ein Objekt, das Entfernungsdetails für den Cacheeintrag enthält. Dieses Objekt bietet mehr Optionen für die Entfernung als ein einfaches absolutes Ablaufen.

regionName
String

Ein benannter Bereich im Cache, dem ein Cacheeintrag hinzugefügt werden kann. Übergeben Sie keinen Wert für diesen Parameter. Dieser Parameter ist nullstandardmäßig , da die MemoryCache Klasse keine Regionen implementiert.

Gibt zurück

Wenn bereits ein übereinstimmender Cacheeintrag vorhanden ist, wird ein Cacheeintrag verwendet. andernfalls . null

Ausnahmen

value ist null.

Sowohl die absoluten als auch die gleitenden Ablaufwerte des CacheItemPolicy Objekts werden auf andere Werte festgelegt als die Standardwerte von InfiniteAbsoluteExpiration und NoSlidingExpiration. Die MemoryCache Klasse kann keine Ablaufrichtlinie basierend auf einer Kombination aus einem absoluten und einem gleitenden Ablauf festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache Klasse verwenden. Die andere Einstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration.

- oder -

Sowohl der Entfernungsrückruf als auch der Updaterückruf wurden für CacheItemPolicy. Dies MemoryCache unterstützt nur die Verwendung eines Rückruftyps pro Cacheeintrag.

Die SlidingExpiration Eigenschaft wird auf einen Wert festgelegt, der kleiner als Zeroist.

- oder -

Der SlidingExpiration Wert wurde auf einen Wert festgelegt, der größer als ein Jahr ist.

- oder -

Die Priority Eigenschaft ist kein Wert der CacheItemPriority Enumeration.

Hinweise

Warnung

Die Add Überladungen und AddOrGetExisting Methoden unterstützen die UpdateCallback Eigenschaft nicht. Verwenden Sie daher stattdessen die Set Methodenüberladungen, um die UpdateCallback Eigenschaft für einen Cacheeintrag festzulegen.

Gilt für: