Sdílet prostřednictvím


MemoryCache.AddOrGetExisting Metoda

Definice

Vloží do mezipaměti položku mezipaměti.

Přetížení

AddOrGetExisting(CacheItem, CacheItemPolicy)

Přidá položku mezipaměti do mezipaměti pomocí zadané CacheItem instance a podrobnosti o tom, jak položku vyřadit.

AddOrGetExisting(String, Object, DateTimeOffset, String)

Přidá položku mezipaměti do mezipaměti pomocí zadaného klíče, hodnoty a absolutní hodnoty vypršení platnosti.

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Vloží položku mezipaměti do mezipaměti pomocí zadaného klíče a hodnoty a zadaných podrobností o tom, jak má být vyřazena.

Poznámky

Přetížení AddOrGetExisting metody slouží k vložení položky mezipaměti do mezipaměti. Pokud položka mezipaměti s odpovídajícím klíčem neexistuje, tyto metody vloží novou položku. Pokud položka mezipaměti s odpovídajícím klíčem již existuje, vrátí existující položku.

AddOrGetExisting(CacheItem, CacheItemPolicy)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Přidá položku mezipaměti do mezipaměti pomocí zadané CacheItem instance a podrobnosti o tom, jak položku vyřadit.

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

Parametry

item
CacheItem

Objekt pro sečtení

policy
CacheItemPolicy

Objekt, který obsahuje podrobnosti o vyřazení položky mezipaměti. Tento objekt poskytuje více možností pro vyřazení než jednoduché absolutní vypršení platnosti.

Návraty

Pokud položka mezipaměti se stejným klíčem existuje, existující položka mezipaměti; v opačném případě . null

Výjimky

Vlastnost Value je null.

Absolutní i posuvné hodnoty vypršení platnosti objektu CacheItemPolicy jsou nastaveny na jiné hodnoty než výchozí hodnoty InfiniteAbsoluteExpiration polí a NoSlidingExpiration . Třída MemoryCache nemůže nastavit zásady vypršení platnosti na základě kombinace absolutního vypršení platnosti a posuvného vypršení platnosti. Při použití MemoryCache instance je možné explicitně nastavit pouze jedno nastavení vypršení platnosti. Ostatní nastavení vypršení platnosti musí být nastavené na InfiniteAbsoluteExpiration pole nebo NoSlidingExpiration pole.

Vlastnost SlidingExpiration je nastavená na hodnotu menší než Zero.

-nebo-

Vlastnost SlidingExpiration je nastavená na hodnotu větší než jeden rok.

-nebo-

Vlastnost Priority není hodnota výčtu CacheItemPriority .

Poznámky

Parametr item poskytuje klíč a hodnotu, kterou metoda používá. Pokud mezipaměť obsahuje položku mezipaměti se stejným klíčem jako klíč parametru item , vrátí metoda existující položku jako CacheItem instanci. Pokud neexistuje žádná položka mezipaměti, metoda vytvoří novou pomocí klíče a hodnoty zadané parametrem item a s podrobnostmi o vyřazení specifikovanými parametrem policy.

Upozornění

Přetížení Add metody a AddOrGetExisting nepodporují UpdateCallback vlastnost . Proto k nastavení UpdateCallback vlastnosti pro položku mezipaměti místo toho použijte Set přetížení metody.

Platí pro

AddOrGetExisting(String, Object, DateTimeOffset, String)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Přidá položku mezipaměti do mezipaměti pomocí zadaného klíče, hodnoty a absolutní hodnoty vypršení platnosti.

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

Parametry

key
String

Jedinečný identifikátor položky mezipaměti, který se má přidat.

value
Object

Data pro položku mezipaměti.

absoluteExpiration
DateTimeOffset

Pevné datum a čas, kdy vyprší platnost položky v mezipaměti.

regionName
String

Pojmenovaná oblast v mezipaměti, do které lze přidat položku mezipaměti. Nepředávejte hodnotu tohoto parametru. Tento parametr je null ve výchozím nastavení, protože MemoryCache třída neimplementuje oblasti.

Návraty

Pokud položka mezipaměti se stejným klíčem existuje, existující položka mezipaměti; v opačném případě . null

Výjimky

value není null.

regionName není null.

Absolutní i posuvné hodnoty vypršení platnosti objektu CacheItemPolicy jsou nastaveny na jiné hodnoty než výchozí hodnoty InfiniteAbsoluteExpiration polí a NoSlidingExpiration . Třída MemoryCache nemůže nastavit zásady vypršení platnosti na základě kombinace absolutního vypršení platnosti a posuvného vypršení platnosti. Při použití MemoryCache instance je možné explicitně nastavit pouze jedno nastavení vypršení platnosti. Ostatní nastavení vypršení platnosti musí být nastavené na InfiniteAbsoluteExpiration nebo NoSlidingExpiration

Vlastnost SlidingExpiration je nastavená na hodnotu menší než Zero.

-nebo-

Vlastnost SlidingExpiration je nastavená na hodnotu větší než jeden rok.

-nebo-

Vlastnost Priority není hodnota výčtu CacheItemPriority .

Poznámky

Pokud mezipaměť neobsahuje položku mezipaměti, jejíž klíč odpovídá parametru key , vytvoří se nová položka mezipaměti a MemoryCache.AddOrGetExisting přetížení metody vrátí nullhodnotu . Pokud existuje odpovídající položka mezipaměti, vrátí se existující položka.

Upozornění

Přetížení Add metody a AddOrGetExisting nepodporují UpdateCallback vlastnost . Proto k nastavení UpdateCallback vlastnosti pro položku mezipaměti místo toho použijte Set přetížení metody.

Platí pro

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Vloží položku mezipaměti do mezipaměti pomocí zadaného klíče a hodnoty a zadaných podrobností o tom, jak má být vyřazena.

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

Parametry

key
String

Jedinečný identifikátor položky mezipaměti, který chcete přidat nebo získat.

value
Object

Data pro položku mezipaměti.

policy
CacheItemPolicy

Objekt, který obsahuje podrobnosti o vyřazení položky mezipaměti. Tento objekt poskytuje více možností pro vyřazení než jednoduché absolutní vypršení platnosti.

regionName
String

Pojmenovaná oblast v mezipaměti, do které lze přidat položku mezipaměti. Nepředávejte hodnotu tohoto parametru. Ve výchozím nastavení je nulltento parametr , protože MemoryCache třída neimplementuje oblasti.

Návraty

Pokud již existuje odpovídající položka mezipaměti, položka mezipaměti; v opačném případě . null

Výjimky

value je null.

Absolutní i posuvné hodnoty vypršení platnosti objektu CacheItemPolicy jsou nastaveny na jiné hodnoty než výchozí hodnoty InfiniteAbsoluteExpiration a NoSlidingExpiration. Třída MemoryCache nemůže nastavit zásady vypršení platnosti na základě kombinace absolutního a posuvného vypršení platnosti. Při použití MemoryCache třídy lze explicitně nastavit pouze jedno nastavení vypršení platnosti. Druhé nastavení musí být nastavené na InfiniteAbsoluteExpiration nebo NoSlidingExpiration.

-nebo-

Pro bylo zadáno CacheItemPolicyzpětné volání odebrání i zpětné volání aktualizace. Podporuje MemoryCache pouze použití jednoho typu zpětného volání pro každou položku mezipaměti.

Vlastnost SlidingExpiration je nastavená na hodnotu menší než Zero.

-nebo-

Hodnota SlidingExpiration byla nastavena na hodnotu větší než jeden rok.

-nebo-

Vlastnost Priority není hodnota výčtu CacheItemPriority .

Poznámky

Upozornění

Přetížení Add metody a AddOrGetExisting nepodporují UpdateCallback vlastnost . Proto k nastavení UpdateCallback vlastnosti pro položku mezipaměti místo toho použijte Set přetížení metody.

Platí pro