CacheExtensions.GetOrCreateAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | 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>>)
非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。
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)
非同步取得該金鑰(若存在)的值,或若找不到金鑰則使用所提供的金鑰與工廠的值產生新條目。
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>
表示異步操作的工作物件。