Sdílet prostřednictvím


MemoryCache.Set Metoda

Definice

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

Přetížení

Set(CacheItem, CacheItemPolicy)

Vloží do mezipaměti položku mezipaměti pomocí CacheItem instance pro zadání klíče a hodnoty pro položku mezipaměti.

Set(String, Object, DateTimeOffset, String)

Vloží do mezipaměti položku mezipaměti pomocí klíče a hodnoty a určuje podrobnosti o vypršení platnosti na základě času.

Set(String, Object, CacheItemPolicy, String)

Vloží do mezipaměti položku mezipaměti pomocí klíče a hodnoty a vyřazení.

Poznámky

Pokud zadaná položka neexistuje, vytvoří se. Pokud zadaná položka existuje, aktualizuje se.

Set(CacheItem, CacheItemPolicy)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Vloží do mezipaměti položku mezipaměti pomocí CacheItem instance pro zadání klíče a hodnoty pro položku mezipaměti.

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)

Parametry

item
CacheItem

Objekt, který představuje položku mezipaměti, která se má vložit.

policy
CacheItemPolicy

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

Výjimky

item je null.

-nebo-

Vlastnost Key je null.

-nebo-

Vlastnost Value je null.

Byla předána neplatná kombinace argumentů pro položku mezipaměti. K tomu dochází, pokud jsou u objektu zásad pro položku mezipaměti nastaveny následující podrobnosti o vypršení platnosti:

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

-nebo-

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

-nebo-

Hodnota Priority není hodnota výčtu CacheItemPriority .

Poznámky

Stejně jako u jiných Set přetížení Set metod metoda vždy vloží hodnotu mezipaměti do mezipaměti bez ohledu na to, zda již existuje položka, která má stejný klíč. Pokud zadaná položka v mezipaměti neexistuje, vloží se nová položka mezipaměti. Pokud zadaná položka již existuje, její hodnota se aktualizuje.

Platí pro

Set(String, Object, DateTimeOffset, String)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Vloží do mezipaměti položku mezipaměti pomocí klíče a hodnoty a určuje podrobnosti o vypršení platnosti na základě času.

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)

Parametry

key
String

Jedinečný identifikátor pro vložení položky mezipaměti.

value
Object

Data pro položku mezipaměti.

absoluteExpiration
DateTimeOffset

Pevné datum a čas, kdy vyprší platnost položky 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.

Výjimky

regionName není null.

key je null.

-nebo-

Value je null.

  • Byla předána neplatná kombinace argumentů pro položku mezipaměti. K tomu dochází, pokud jsou u objektu zásad pro položku mezipaměti nastaveny následující podrobnosti o vypršení platnosti:

  • Pokud jsou absolutní i posuvné hodnoty vypršení platnosti u objektu CacheItemPolicy nastaveny InfiniteAbsoluteExpiration na jiné hodnoty než výchozí hodnoty a NoSlidingExpiration. K tomu dochází, protože MemoryCache třída nepodporuje vypršení platnosti položek na základě absolutního i 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 nastaveno na InfiniteAbsoluteExpiration nebo NoSlidingExpiration.

  • Pokud je u objektu zadáno CacheItemPolicy zpětné volání odebrání i zpětné volání aktualizace. Třída MemoryCache podporuje pouze použití jednoho typu zpětného volání pro každou položku mezipaměti.

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

-nebo-

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

-nebo-

Poznámky

Stejně jako u jiných Set přetížení Set metod metoda vždy vloží hodnotu mezipaměti do mezipaměti bez ohledu na to, zda položka již existuje se stejným klíčem. Pokud zadaná položka neexistuje, vloží se nová položka mezipaměti. Pokud zadaná položka existuje, aktualizuje se.

Parametr absoluteExpiration označuje, kdy má být položka odebrána z mezipaměti.

Odebrání položky aktivuje všechna přidružená monitorování změn. Pokud byla odebraná položka přidružena k objektu CacheItemUpdateCallback nebo CacheItemRemovedCallback objektu, je důvod pro odebrání, který se předá zpětným voláním, obsažen ve Removed vlastnosti.

Platí pro

Set(String, Object, CacheItemPolicy, String)

Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs
Zdroj:
MemoryCache.cs

Vloží do mezipaměti položku mezipaměti pomocí klíče a hodnoty a vyřazení.

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)

Parametry

key
String

Jedinečný identifikátor pro vložení položky mezipaměti.

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í 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. Tento parametr je null ve výchozím nastavení, protože MemoryCache třída neimplementuje oblasti.

Výjimky

key je null.

-nebo-

value je null

-nebo-

Odkaz na zpětné volání, který byl předán pomocné metodě ve UpdateCallback vlastnosti je null.

  • Pro položku mezipaměti existuje neplatná kombinace argumentů. K tomu dochází, pokud jsou u objektu zásad pro položku mezipaměti nastaveny následující podrobnosti o vypršení platnosti:

  • Pokud jsou absolutní i posuvné hodnoty vypršení platnosti u objektu CacheItemPolicy nastaveny InfiniteAbsoluteExpiration na jiné hodnoty než výchozí hodnoty a NoSlidingExpiration. Je to proto, že MemoryCache třída nepodporuje vypršení platnosti položek na základě absolutního i 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 nastaveno na InfiniteAbsoluteExpiration nebo NoSlidingExpiration.

  • Pokud je ve třídě zadáno CacheItemPolicy zpětné volání odebrání i zpětné volání aktualizace. Třída MemoryCache podporuje pouze použití jednoho typu zpětného volání pro každou položku mezipaměti.

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

-nebo-

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

-nebo-

Vlastnost Priority není hodnotou výčtu CacheItemPriority .

regionName není null.

Poznámky

Stejně jako u jiných Set přetížení Set metod metoda vždy vloží hodnotu mezipaměti do mezipaměti bez ohledu na to, zda odpovídající položka již existuje. Pokud zadaná položka v mezipaměti neexistuje, vloží se nová položka mezipaměti. Pokud zadaná položka existuje, aktualizuje se.

Odebrání položky aktivuje všechna přidružená monitorování změn. Pokud byla odebraná položka přidružena k objektu CacheItemUpdateCallback nebo CacheItemRemovedCallback objektu, je důvod pro odebrání, který se předá zpětným voláním, obsažen ve Removed vlastnosti.

Platí pro