CacheExtensions.GetOrCreateAsync 方法

定義

多載

名稱 Description
GetOrCreateAsync<TItem>(IMemoryCache, Object, Func<ICacheEntry,Task<TItem>>)

非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。

GetOrCreateAsync<TItem>(IMemoryCache, Object, Func<ICacheEntry,Task<TItem>>, MemoryCacheEntryOptions)

非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。

GetOrCreateAsync<TItem>(IMemoryCache, Object, Func<ICacheEntry,Task<TItem>>)

來源:
MemoryCacheExtensions.cs
來源:
MemoryCacheExtensions.cs
來源:
MemoryCacheExtensions.cs
來源:
MemoryCacheExtensions.cs

非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。

public:
generic <typename TItem>
[System::Runtime::CompilerServices::Extension]
 static System::Threading::Tasks::Task<TItem> ^ GetOrCreateAsync(Microsoft::Extensions::Caching::Memory::IMemoryCache ^ cache, System::Object ^ key, Func<Microsoft::Extensions::Caching::Memory::ICacheEntry ^, System::Threading::Tasks::Task<TItem> ^> ^ factory);
public static System.Threading.Tasks.Task<TItem?> GetOrCreateAsync<TItem>(this Microsoft.Extensions.Caching.Memory.IMemoryCache cache, object key, Func<Microsoft.Extensions.Caching.Memory.ICacheEntry,System.Threading.Tasks.Task<TItem>> factory);
static member GetOrCreateAsync : Microsoft.Extensions.Caching.Memory.IMemoryCache * obj * Func<Microsoft.Extensions.Caching.Memory.ICacheEntry, System.Threading.Tasks.Task<'Item>> -> System.Threading.Tasks.Task<'Item>
<Extension()>
Public Function GetOrCreateAsync(Of TItem) (cache As IMemoryCache, key As Object, factory As Func(Of ICacheEntry, Task(Of TItem))) As Task(Of TItem)

類型參數

TItem

要取得的物件類型。

參數

cache
IMemoryCache

IMemoryCache 方法擴展的實例。

key
Object

入口的鑰匙是尋找或創造的。

factory
Func<ICacheEntry,Task<TItem>>

工廠任務負責在快取中不存在該金鑰時,建立與該金鑰相關聯的值。

傳回

Task<TItem>

表示異步操作的工作物件。

適用於

GetOrCreateAsync<TItem>(IMemoryCache, Object, Func<ICacheEntry,Task<TItem>>, MemoryCacheEntryOptions)

來源:
MemoryCacheExtensions.cs
來源:
MemoryCacheExtensions.cs
來源:
MemoryCacheExtensions.cs

非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。

public:
generic <typename TItem>
[System::Runtime::CompilerServices::Extension]
 static System::Threading::Tasks::Task<TItem> ^ GetOrCreateAsync(Microsoft::Extensions::Caching::Memory::IMemoryCache ^ cache, System::Object ^ key, Func<Microsoft::Extensions::Caching::Memory::ICacheEntry ^, System::Threading::Tasks::Task<TItem> ^> ^ factory, Microsoft::Extensions::Caching::Memory::MemoryCacheEntryOptions ^ createOptions);
public static System.Threading.Tasks.Task<TItem?> GetOrCreateAsync<TItem>(this Microsoft.Extensions.Caching.Memory.IMemoryCache cache, object key, Func<Microsoft.Extensions.Caching.Memory.ICacheEntry,System.Threading.Tasks.Task<TItem>> factory, Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions? createOptions);
static member GetOrCreateAsync : Microsoft.Extensions.Caching.Memory.IMemoryCache * obj * Func<Microsoft.Extensions.Caching.Memory.ICacheEntry, System.Threading.Tasks.Task<'Item>> * Microsoft.Extensions.Caching.Memory.MemoryCacheEntryOptions -> System.Threading.Tasks.Task<'Item>
<Extension()>
Public Function GetOrCreateAsync(Of TItem) (cache As IMemoryCache, key As Object, factory As Func(Of ICacheEntry, Task(Of TItem)), createOptions As MemoryCacheEntryOptions) As Task(Of TItem)

類型參數

TItem

要取得的物件類型。

參數

cache
IMemoryCache

IMemoryCache 方法擴展的實例。

key
Object

入口的鑰匙是尋找或創造的。

factory
Func<ICacheEntry,Task<TItem>>

工廠任務負責在快取中不存在該金鑰時,建立與該金鑰相關聯的值。

createOptions
MemoryCacheEntryOptions

如果快取中沒有金鑰,該選項應套用 ICacheEntry

傳回

Task<TItem>

表示異步操作的工作物件。

適用於