MemoryCache.AddOrGetExisting Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt einen Cacheeintrag in den Cache ein.
Überlädt
AddOrGetExisting(CacheItem, CacheItemPolicy) |
Fügt einen Cacheeintrag unter Verwendung der angegebenen CacheItem-Instanz und Details zur Entfernung des Eintrags im Cache hinzu. |
AddOrGetExisting(String, Object, DateTimeOffset, String) |
Fügt einen Cacheeintrag unter Verwendung des angegebenen Schlüssels, eines Werts und eines absoluten Ablaufwerts im Cache hinzu. |
AddOrGetExisting(String, Object, CacheItemPolicy, String) |
Fügt einen Cacheeintrag unter Verwendung des angegebenen Schlüssels und Werts und der angegebenen Details zur Entfernung in den Cache ein. |
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, wird der vorhandene Eintrag zurückgegeben.
AddOrGetExisting(CacheItem, CacheItemPolicy)
- Quelle:
- MemoryCache.cs
- Quelle:
- MemoryCache.cs
Fügt einen Cacheeintrag unter Verwendung der angegebenen CacheItem-Instanz und Details zur Entfernung des Eintrags im 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 stellt mehr Optionen für das Entfernen bereit als ein einfacher absoluter Ablauf.
Gibt zurück
Der vorhandene Cacheeintrag, wenn ein Cacheeintrag mit demselben Schlüssel vorhanden ist, andernfalls null
.
Ausnahmen
Die Value-Eigenschaft ist null
.
Sowohl der absolute und gleitende Ablaufzeitwert für das CacheItemPolicy-Objekt werden auf andere Werte als die Standardwerte der InfiniteAbsoluteExpiration-Felder und der NoSlidingExpiration-Felder festgelegt. Die MemoryCache-Klasse kann keine Ablaufrichtlinie auf Grundlage einer Kombination einer absoluten Ablaufzeit und einer gleitenden Ablaufzeit festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache-Instanz verwenden. Die andere Ablaufeinstellung muss auf das InfiniteAbsoluteExpiration-Feld oder das NoSlidingExpiration-Feld festgelegt werden.
Die SlidingExpiration-Eigenschaft wird auf einen Wert kleiner als Zero festgelegt.
- oder -
Die SlidingExpiration-Eigenschaft ist auf einen größeren Wert als ein Jahr festgelegt.
- 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 instance 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 policy
angegebenen Entfernungsdetails einen neuen.
Warnung
Die Methodenüberladungen Add und AddOrGetExisting unterstützen die UpdateCallback-Eigenschaft nicht. Daher verwenden Sie zum Festlegen der UpdateCallback-Eigenschaft für einen Cacheeintrag stattdessen die Set-Methodenüberladungen.
Gilt für:
AddOrGetExisting(String, Object, DateTimeOffset, String)
- Quelle:
- MemoryCache.cs
- Quelle:
- MemoryCache.cs
Fügt einen Cacheeintrag unter Verwendung des angegebenen Schlüssels, eines Werts und eines absoluten Ablaufwerts im Cache hinzu.
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, an dem bzw. zu der 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 standardmäßig null
, da die MemoryCache-Klasse keine Bereiche implementiert.
Gibt zurück
Der vorhandene Cacheeintrag, wenn ein Cacheeintrag mit demselben Schlüssel vorhanden ist, andernfalls null
.
Ausnahmen
value
ist nicht null
.
regionName
ist nicht null
.
Sowohl der absolute und gleitende Ablaufzeitwert für das CacheItemPolicy-Objekt werden auf andere Werte als die Standardwerte der InfiniteAbsoluteExpiration-Felder und der NoSlidingExpiration-Felder festgelegt. Die MemoryCache-Klasse kann keine Ablaufrichtlinie auf Grundlage einer Kombination einer absoluten Ablaufzeit und einer gleitenden Ablaufzeit festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache-Instanz verwenden. Die andere Ablaufeinstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration festgelegt werden
Die SlidingExpiration-Eigenschaft wird auf einen Wert kleiner als Zero festgelegt.
- oder -
Die SlidingExpiration-Eigenschaft ist auf einen größeren Wert als ein Jahr festgelegt.
- oder -
Die Priority-Eigenschaft ist kein Wert der CacheItemPriority-Enumeration.
Hinweise
Wenn der Cache keinen Cacheeintrag aufweist, dessen Schlüssel mit dem key
Parameter übereinstimmt, wird ein neuer Cacheeintrag erstellt, und die MemoryCache.AddOrGetExisting Methodenüberladung gibt zurück null
. Wenn ein übereinstimmenden Cacheeintrag vorhanden ist, wird der vorhandene Eintrag zurückgegeben.
Warnung
Die Methodenüberladungen Add und AddOrGetExisting unterstützen die UpdateCallback-Eigenschaft nicht. Daher verwenden Sie zum Festlegen der UpdateCallback-Eigenschaft für einen Cacheeintrag stattdessen die Set-Methodenüberladungen.
Gilt für:
AddOrGetExisting(String, Object, CacheItemPolicy, String)
- Quelle:
- MemoryCache.cs
- Quelle:
- MemoryCache.cs
Fügt einen Cacheeintrag unter Verwendung des angegebenen Schlüssels und Werts und der angegebenen Details zur Entfernung in den Cache ein.
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 stellt mehr Optionen für das Entfernen bereit als ein einfacher absoluter Ablauf.
- 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 standardmäßig null
, da die MemoryCache-Klasse keine Bereiche implementiert.
Gibt zurück
Ein Cacheeintrag, wenn bereits ein entsprechender Cacheeintrag vorhanden ist, andernfalls null
.
Ausnahmen
value
ist null
.
Sowohl die absoluten als auch die gleitenden Ablaufzeitwerte des CacheItemPolicy-Objekts werden auf andere Werte als die Standards von InfiniteAbsoluteExpiration und NoSlidingExpiration festgelegt. Die MemoryCache-Klasse kann keine Ablaufrichtlinie auf Grundlage einer Kombination einer absoluten und einer gleitenden Ablaufzeit festlegen. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache-Klasse verwenden. Die andere Einstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration festgelegt werden.
- oder -
Sowohl der Löschrückruf als auch der Updaterückruf wurden für das CacheItemPolicy-Objekt angegeben. Der MemoryCache unterstützt nur das Verwenden von einem Typ von Rückruf pro Cacheeintrag.
Die SlidingExpiration-Eigenschaft wird auf einen Wert kleiner als Zero festgelegt.
- oder -
Die SlidingExpiration wurde auf einen Wert größer als ein Jahr festgelegt.
- oder -
Die Priority-Eigenschaft ist kein Wert der CacheItemPriority-Enumeration.
Hinweise
Warnung
Die Methodenüberladungen Add und AddOrGetExisting unterstützen die UpdateCallback-Eigenschaft nicht. Daher verwenden Sie zum Festlegen der UpdateCallback-Eigenschaft für einen Cacheeintrag stattdessen die Set-Methodenüberladungen.