共用方式為


MemoryCache.AddOrGetExisting 方法

定義

將快取條目插入快取。

多載

名稱 Description
AddOrGetExisting(CacheItem, CacheItemPolicy)

使用指定的 CacheItem 實例將快取條目加入快取,並提供如何驅逐該條目。

AddOrGetExisting(String, Object, DateTimeOffset, String)

使用指定的鍵、一個值和一個絕對到期值,將快取條目加入快取。

AddOrGetExisting(String, Object, CacheItemPolicy, String)

使用指定的鍵值與值,以及指定的逐出方式,插入快取條目。

備註

AddOrGetExisting方法過載用於將快取條目插入快取。 若不存在具有匹配金鑰的快取項目,這些方法會插入新的項目。 如果快取項目已有與匹配金鑰相符的項目,則回傳該現有項目。

AddOrGetExisting(CacheItem, CacheItemPolicy)

來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs

使用指定的 CacheItem 實例將快取條目加入快取,並提供如何驅逐該條目。

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

參數

item
CacheItem

要補充的目標。

policy
CacheItemPolicy

一個包含快取項目驅逐細節的物件。 這個物件提供了比單純絕對淘汰更多的淘汰選項。

傳回

若存在具有相同金鑰的快取項目,現有快取項目;否則,。 null

例外狀況

IsEditable 屬性為 true。

物件的絕對與滑動到期值CacheItemPolicy皆設定為 和 NoSlidingExpiration 欄位的預設InfiniteAbsoluteExpiration值以外的值。 該 MemoryCache 類別無法根據絕對到期與滑動到期的組合來設定到期政策。 使用實 MemoryCache 例時,只能明確設定一個到期時間設定。 另一個到期設定必須設為 InfiniteAbsoluteExpiration field 或 NoSlidingExpiration field。

屬性 SlidingExpiration 設定為小於 Zero的值。

-或-

SlidingExpiration該房產的價值設定超過一年。

-或-

Priority 財產並非列舉的價值 CacheItemPriority

備註

參數 item 提供鍵與方法所使用的值。 如果快取的快取條目與參數的鍵 item 相同,該方法會以實例回傳現有的條目 CacheItem 。 若無現有快取條目,該方法會利用參數提供的 item 鍵與值,並以 所指定的 policy驅逐細節建立新快取。

警告

AddAddOrGetExisting 方法的超載不支援該UpdateCallback性質。 因此,若要設定快取項目的 UpdateCallback 屬性,請改用 Set 方法過載。

適用於

AddOrGetExisting(String, Object, DateTimeOffset, String)

來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs

使用指定的鍵、一個值和一個絕對到期值,將快取條目加入快取。

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

參數

key
String

一個用於快取項目可新增的唯一識別碼。

value
Object

快取資料。

absoluteExpiration
DateTimeOffset

快取條目到期的固定日期與時間。

regionName
String

快取中可新增快取條目的指定區域。 不要傳遞該參數的值。 這個參數是 null 預設的,因為該 MemoryCache 類別不實作區域。

傳回

若存在具有相同金鑰的快取項目,現有快取項目;否則,。 null

例外狀況

value 不是 null

regionName 不是 null

物件的絕對與滑動到期值CacheItemPolicy皆設定為 和 NoSlidingExpiration 欄位的預設InfiniteAbsoluteExpiration值以外的值。 該 MemoryCache 類別無法根據絕對到期與滑動到期的組合來設定到期政策。 使用實 MemoryCache 例時,只能明確設定一個到期時間設定。 另一個到期設定必須設為 InfiniteAbsoluteExpirationNoSlidingExpiration

屬性 SlidingExpiration 設定為小於 Zero的值。

-或-

SlidingExpiration該房產的價值設定超過一年。

-或-

Priority 財產並非列舉的價值 CacheItemPriority

備註

若快取沒有與參數相符 key 的快取項目,則會建立新的快取項目,並 MemoryCache.AddOrGetExisting 返回方法過載 null。 若存在匹配的快取條目,則回傳該現有條目。

警告

AddAddOrGetExisting 方法的超載不支援該UpdateCallback性質。 因此,若要設定快取項目的 UpdateCallback 屬性,請改用 Set 方法過載。

適用於

AddOrGetExisting(String, Object, CacheItemPolicy, String)

來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs
來源:
MemoryCache.cs

使用指定的鍵值與值,以及指定的逐出方式,插入快取條目。

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

參數

key
String

一個用於新增或取得快取項目的唯一識別碼。

value
Object

快取資料。

policy
CacheItemPolicy

一個包含快取項目驅逐細節的物件。 這個物件提供了比單純絕對淘汰更多的淘汰選項。

regionName
String

快取中可新增快取條目的指定區域。 不要傳遞該參數的值。 預設參數為 null,因為該 MemoryCache 類別不實作區域。

傳回

若已有匹配快取條目,則為快取條目;否則,。 null

例外狀況

valuenull

物件的 CacheItemPolicy 絕對與滑動到期值皆設定為非預設值與 InfiniteAbsoluteExpirationNoSlidingExpiration的值。 該 MemoryCache 類別無法根據絕對到期與滑動到期的組合來設定到期政策。 使用該 MemoryCache 類別時,只能明確設定一個到期時間設定。 另一個設定必須設為 InfiniteAbsoluteExpirationNoSlidingExpiration

-或-

移除回調與更新回調均已指定為 CacheItemPolicyMemoryCache唯一支援每個快取項目使用一種回調方式。

屬性 SlidingExpiration 設定為小於 Zero的值。

-或-

該價值 SlidingExpiration 被設定為超過一年的金額。

-或-

Priority 財產並非列舉的價值 CacheItemPriority

備註

警告

AddAddOrGetExisting 方法的超載不支援該UpdateCallback性質。 因此,若要設定快取項目的 UpdateCallback 屬性,請改用 Set 方法過載。

適用於