Bagikan melalui


CacheExtensions.GetOrCreateAsync Metode

Definisi

Overload

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

Secara asinkron mendapatkan nilai yang terkait dengan kunci ini jika ada, atau menghasilkan entri baru menggunakan kunci yang disediakan dan nilai dari pabrik yang diberikan jika kunci tidak ditemukan.

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

Secara asinkron mendapatkan nilai yang terkait dengan kunci ini jika ada, atau menghasilkan entri baru menggunakan kunci yang disediakan dan nilai dari pabrik yang diberikan jika kunci tidak ditemukan.

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

Sumber:
MemoryCacheExtensions.cs
Sumber:
MemoryCacheExtensions.cs
Sumber:
MemoryCacheExtensions.cs

Secara asinkron mendapatkan nilai yang terkait dengan kunci ini jika ada, atau menghasilkan entri baru menggunakan kunci yang disediakan dan nilai dari pabrik yang diberikan jika kunci tidak ditemukan.

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)

Jenis parameter

TItem

Jenis objek yang akan didapatkan.

Parameter

cache
IMemoryCache

Instans IMemoryCache yang diperluas metode ini.

key
Object

Kunci entri untuk mencari atau membuat.

factory
Func<ICacheEntry,Task<TItem>>

Tugas pabrik yang membuat nilai yang terkait dengan kunci ini jika kunci tidak ada di cache.

Mengembalikan

Task<TItem>

Objek tugas yang mewakili operasi asinkron.

Berlaku untuk

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

Sumber:
MemoryCacheExtensions.cs
Sumber:
MemoryCacheExtensions.cs

Secara asinkron mendapatkan nilai yang terkait dengan kunci ini jika ada, atau menghasilkan entri baru menggunakan kunci yang disediakan dan nilai dari pabrik yang diberikan jika kunci tidak ditemukan.

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)

Jenis parameter

TItem

Jenis objek yang akan didapatkan.

Parameter

cache
IMemoryCache

Instans IMemoryCache yang diperluas metode ini.

key
Object

Kunci entri untuk mencari atau membuat.

factory
Func<ICacheEntry,Task<TItem>>

Tugas pabrik yang membuat nilai yang terkait dengan kunci ini jika kunci tidak ada di cache.

createOptions
MemoryCacheEntryOptions

Opsi yang akan diterapkan ke ICacheEntry jika kunci tidak ada di cache.

Mengembalikan

Task<TItem>

Objek tugas yang mewakili operasi asinkron.

Berlaku untuk