語言

HybridCache.GetOrCreateAsync 方法

定義

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

多載

名稱 Description
GetOrCreateAsync<T>(ReadOnlySpan<Char>, Func<HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(ReadOnlySpan<Char>, Func<CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(DefaultInterpolatedStringHandler, Func<HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(DefaultInterpolatedStringHandler, Func<CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(String, Func<HybridCacheEntryContext,CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(String, Func<CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(String, TState, Func<TState,CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(String, TState, Func<TState,HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(DefaultInterpolatedStringHandler, TState, Func<TState,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(ReadOnlySpan<Char>, TState, Func<TState, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(ReadOnlySpan<Char>, TState, Func<TState, HybridCacheEntryContext,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<TState,T>(DefaultInterpolatedStringHandler, TState, Func<TState,HybridCacheEntryContext,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

GetOrCreateAsync<T>(ReadOnlySpan<Char>, Func<HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(ReadOnlySpan<char> key, Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : ReadOnlySpan<char> * Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (key As ReadOnlySpan(Of Char), factory As Func(Of HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
ReadOnlySpan<Char>

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

factory
Func<HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<T>(ReadOnlySpan<Char>, Func<CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(ReadOnlySpan<char> key, Func<System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : ReadOnlySpan<char> * Func<System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (key As ReadOnlySpan(Of Char), factory As Func(Of CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
ReadOnlySpan<Char>

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

factory
Func<CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<T>(DefaultInterpolatedStringHandler, Func<HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(ref System.Runtime.CompilerServices.DefaultInterpolatedStringHandler key, Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : DefaultInterpolatedStringHandler * Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (ByRef key As DefaultInterpolatedStringHandler, factory As Func(Of HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
DefaultInterpolatedStringHandler

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

factory
Func<HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<T>(DefaultInterpolatedStringHandler, Func<CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(ref System.Runtime.CompilerServices.DefaultInterpolatedStringHandler key, Func<System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : DefaultInterpolatedStringHandler * Func<System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (ByRef key As DefaultInterpolatedStringHandler, factory As Func(Of CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
DefaultInterpolatedStringHandler

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

factory
Func<CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<T>(String, Func<HybridCacheEntryContext,CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(string key, Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : string * Func<Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (key As String, factory As Func(Of HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
String

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

factory
Func<HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<T>(String, Func<CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs
來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<T>(string key, Func<System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : string * Func<System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of T) (key As String, factory As Func(Of CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

T

所考慮的資料類型。

參數

key
String

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

factory
Func<CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<TState,T>(String, TState, Func<TState,CancellationToken, ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs
來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public abstract System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(string key, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetOrCreateAsync : string * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public MustOverride Function GetOrCreateAsync(Of TState, T) (key As String, state As TState, factory As Func(Of TState, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
String

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

state
TState

所需的 factory狀態。

factory
Func<TState,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<TState,T>(String, TState, Func<TState,HybridCacheEntryContext, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public virtual System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(string key, TState state, Func<TState,Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetOrCreateAsync : string * 'State * Func<'State, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
override this.GetOrCreateAsync : string * 'State * Func<'State, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Overridable Function GetOrCreateAsync(Of TState, T) (key As String, state As TState, factory As Func(Of TState, HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
String

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

state
TState

所需的 factory狀態。

factory
Func<TState,HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<TState,T>(DefaultInterpolatedStringHandler, TState, Func<TState,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(ref System.Runtime.CompilerServices.DefaultInterpolatedStringHandler key, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : DefaultInterpolatedStringHandler * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of TState, T) (ByRef key As DefaultInterpolatedStringHandler, state As TState, factory As Func(Of TState, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
DefaultInterpolatedStringHandler

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

state
TState

所需的 factory狀態。

factory
Func<TState,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<TState,T>(ReadOnlySpan<Char>, TState, Func<TState, CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public virtual System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(ReadOnlySpan<char> key, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetOrCreateAsync : ReadOnlySpan<char> * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
override this.GetOrCreateAsync : ReadOnlySpan<char> * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Overridable Function GetOrCreateAsync(Of TState, T) (key As ReadOnlySpan(Of Char), state As TState, factory As Func(Of TState, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
ReadOnlySpan<Char>

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

state
TState

所需的 factory狀態。

factory
Func<TState,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

備註

實作者可利用金鑰範圍嘗試本地快取同步「取得」,而無需將金鑰作為 String。

適用於

GetOrCreateAsync<TState,T>(ReadOnlySpan<Char>, TState, Func<TState, HybridCacheEntryContext,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public virtual System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(ReadOnlySpan<char> key, TState state, Func<TState,Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetOrCreateAsync : ReadOnlySpan<char> * 'State * Func<'State, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
override this.GetOrCreateAsync : ReadOnlySpan<char> * 'State * Func<'State, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Overridable Function GetOrCreateAsync(Of TState, T) (key As ReadOnlySpan(Of Char), state As TState, factory As Func(Of TState, HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
ReadOnlySpan<Char>

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

state
TState

所需的 factory狀態。

factory
Func<TState,HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於

GetOrCreateAsync<TState,T>(DefaultInterpolatedStringHandler, TState, Func<TState,HybridCacheEntryContext,CancellationToken,ValueTask<T>>, HybridCacheEntryOptions, IEnumerable<String>, CancellationToken)

來源:
HybridCache.cs
來源:
HybridCache.cs

如果鍵值存在,則非同步取得該鍵的值;若找不到鍵,則用提供的鍵與工廠的值產生新條目。

public System.Threading.Tasks.ValueTask<T> GetOrCreateAsync<TState,T>(ref System.Runtime.CompilerServices.DefaultInterpolatedStringHandler key, TState state, Func<TState,Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<T>> factory, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions? options = default, System.Collections.Generic.IEnumerable<string>? tags = default, System.Threading.CancellationToken cancellationToken = default);
member this.GetOrCreateAsync : DefaultInterpolatedStringHandler * 'State * Func<'State, Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryContext, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'T>> * Microsoft.Extensions.Caching.Hybrid.HybridCacheEntryOptions * seq<string> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'T>
Public Function GetOrCreateAsync(Of TState, T) (ByRef key As DefaultInterpolatedStringHandler, state As TState, factory As Func(Of TState, HybridCacheEntryContext, CancellationToken, ValueTask(Of T)), Optional options As HybridCacheEntryOptions = Nothing, Optional tags As IEnumerable(Of String) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of T)

類型參數

TState

所需的 factory額外狀態類型。

T

所考慮的資料類型。

參數

key
DefaultInterpolatedStringHandler

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

state
TState

所需的 factory狀態。

factory
Func<TState,HybridCacheEntryContext,CancellationToken,ValueTask<T>>

若快取中資料無法取得,則提供底層資料服務。 傳入工廠後 HybridCacheEntryContext ,能根據結果影響快取進入選項。

options
HybridCacheEntryOptions

此快取條目有額外選項。

tags
IEnumerable<String>

這些標籤要與這個快取項目關聯。

cancellationToken
CancellationToken

它們 CancellationToken 用來傳播該操作應該被取消的通知。

傳回

資料來自快取或底層資料服務。

適用於