次の方法で共有


CacheExtensions.GetOrCreateAsync メソッド

定義

オーバーロード

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

このキーが存在する場合は、このキーに関連付けられている値を非同期に取得するか、指定されたキーを使用して新しいエントリを生成し、キーが見つからない場合は特定のファクトリから値を生成します。

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>

非同期操作を表すタスク オブジェクト。

適用対象