Teilen über


MemoryCache.Set Methode

Definition

Fügt einen Cacheeintrag in den Cache ein.

Überlädt

Set(CacheItem, CacheItemPolicy)

Fügt einen Cacheeintrag in den Cache ein und gibt dabei mit einer CacheItem-Instanz den Schlüssel und den Wert für den Cacheeintrag an.

Set(String, Object, DateTimeOffset, String)

Fügt einen Cacheeintrag unter Verwendung eines Schlüssels und eines Werts in den Cache ein und gibt zeitbasierte Ablaufdetails an.

Set(String, Object, CacheItemPolicy, String)

Fügt einen Cacheeintrag unter Verwendung eines Schlüssels, eines Werts und von Entfernungsdetails in den Cache ein.

Hinweise

Wenn der angegebene Eintrag nicht vorhanden ist, wird er erstellt. Wenn der angegebene Eintrag vorhanden ist, wird er aktualisiert.

Set(CacheItem, CacheItemPolicy)

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

Fügt einen Cacheeintrag in den Cache ein und gibt dabei mit einer CacheItem-Instanz den Schlüssel und den Wert für den Cacheeintrag an.

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)

Parameter

item
CacheItem

Ein Objekt, das einen einzufügenden Cacheeintrag darstellt.

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.

Ausnahmen

item ist null.

- oder -

Die Key-Eigenschaft ist null.

- oder -

Die Value-Eigenschaft ist null.

Eine ungültige Kombination der Argumente für den Cacheeintrag wurde übergeben. Dies tritt auf, wenn die folgenden Ablaufdetails für das Richtlinienobjekt für den Cacheeintrag 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 ist kein Wert der CacheItemPriority-Enumeration.

Hinweise

Wie bei anderen Set Methodenüberladungen legt die Set Methode immer einen Cachewert im Cache ab, unabhängig davon, ob bereits ein Eintrag mit demselben Schlüssel vorhanden ist. Wenn der angegebene Eintrag nicht im Cache vorhanden ist, wird ein neuer Cacheeintrag eingefügt. Wenn der angegebene Eintrag bereits vorhanden ist, wird sein Wert aktualisiert.

Gilt für:

Set(String, Object, DateTimeOffset, String)

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

Fügt einen Cacheeintrag unter Verwendung eines Schlüssels und eines Werts in den Cache ein und gibt zeitbasierte Ablaufdetails an.

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)

Parameter

key
String

Ein eindeutiger Bezeichner für den einzufü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.

Ausnahmen

regionName ist nicht null.

key ist null.

- oder -

Value ist null.

  • Eine ungültige Kombination der Argumente für den Cacheeintrag wurde übergeben. Dies tritt auf, wenn die folgenden Ablaufdetails für das Richtlinienobjekt für den Cacheeintrag festgelegt werden:

  • Wenn sowohl die absoluten als auch die gleitenden Ablaufwerte für das CacheItemPolicy Objekt auf andere Werte als die Standardwerte von InfiniteAbsoluteExpiration und NoSlidingExpirationfestgelegt sind. Das tritt auf, da die MemoryCache-Klasse ablaufende Einträge auf Grundlage eines absoluten und gleitenden Ablaufs nicht unterstützt. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache-Klasse verwenden. Die andere Einstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration festgelegt werden.

  • Wenn sowohl der Entfernungsrückruf als auch der Updaterückruf für das CacheItemPolicy Objekt angegeben sind. Die MemoryCache-Klasse 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-Eigenschaft ist auf einen größeren Wert als ein Jahr festgelegt.

- oder -

Hinweise

Wie bei anderen Set Methodenüberladungen legt die Set Methode immer einen Cachewert im Cache ab, unabhängig davon, ob bereits ein Eintrag mit demselben Schlüssel vorhanden ist. Wenn der angegebene Eintrag nicht vorhanden ist, wird ein neuer Cacheeintrag eingefügt. Wenn der angegebene Eintrag vorhanden ist, wird er aktualisiert.

Der absoluteExpiration Parameter gibt an, wann der Eintrag aus dem Cache entfernt werden soll.

Das Entfernen eines Eintrags löst alle zugeordneten Änderungsmonitore aus. Wenn das entfernte Element einem Objekt oder CacheItemRemovedCallback Objekt CacheItemUpdateCallback zugeordnet war, ist der Grund für das Entfernen, der an die Rückrufe übergeben wird, in der Removed -Eigenschaft enthalten.

Gilt für:

Set(String, Object, CacheItemPolicy, String)

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

Fügt einen Cacheeintrag unter Verwendung eines Schlüssels, eines Werts und von Entfernungsdetails in den Cache ein.

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)

Parameter

key
String

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

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.

Ausnahmen

key ist null.

- oder -

value ist gleich null.

- oder -

Der Rückrufverweis, der in der UpdateCallback-Eigenschaft an die Hilfsmethode übergeben wurde, lautet null.

  • Es ist eine ungültige Kombination von Argumenten für den Cacheeintrag vorhanden. Dies tritt auf, wenn die folgenden Ablaufdetails für das Richtlinienobjekt für den Cacheeintrag festgelegt werden:

  • Wenn sowohl die absoluten als auch die gleitenden Ablaufwerte für das CacheItemPolicy Objekt auf andere Werte als die Standardwerte von InfiniteAbsoluteExpiration und NoSlidingExpirationfestgelegt sind. Das liegt daran, dass die MemoryCache-Klasse ablaufende Einträge auf Grundlage eines absoluten und gleitenden Ablaufs nicht unterstützt. Nur eine Ablaufeinstellung kann explizit festgelegt werden, wenn Sie die MemoryCache-Klasse verwenden. Die andere Einstellung muss auf InfiniteAbsoluteExpiration oder NoSlidingExpiration festgelegt werden.

  • Wenn sowohl der Entfernungsrückruf als auch der Updaterückruf für die CacheItemPolicy Klasse angegeben sind. Die MemoryCache-Klasse 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-Eigenschaft ist auf einen größeren Wert als ein Jahr festgelegt.

- oder -

Die Priority-Eigenschaft ist kein Wert der CacheItemPriority-Enumeration.

regionName ist nicht null.

Hinweise

Wie bei anderen Set Methodenüberladungen legt die Set Methode immer einen Cachewert im Cache ab, unabhängig davon, ob bereits ein übereinstimmenden Eintrag vorhanden ist. Wenn der angegebene Eintrag nicht im Cache vorhanden ist, wird ein neuer Cacheeintrag eingefügt. Wenn der angegebene Eintrag vorhanden ist, wird er aktualisiert.

Das Entfernen eines Eintrags löst alle zugeordneten Änderungsmonitore aus. Wenn das entfernte Element einem Objekt oder CacheItemRemovedCallback Objekt CacheItemUpdateCallback zugeordnet war, ist der Grund für das Entfernen, der an die Rückrufe übergeben wird, in der Removed -Eigenschaft enthalten.

Gilt für: