Share via


DbRawSqlQuery<TElement>.SingleOrDefaultAsync 方法 (Func<TElement, Boolean>, CancellationToken)

[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]

非同步傳回查詢中符合指定條件的唯一一個項目,如果沒有這類項目,則為預設值,如果有一個以上的項目符合條件,此方法就會擲回例外狀況。

命名空間:  System.Data.Entity.Infrastructure
組件:  EntityFramework (在 EntityFramework.dll 中)

語法

'宣告
Public Function SingleOrDefaultAsync ( _
    predicate As Func(Of TElement, Boolean), _
    cancellationToken As CancellationToken _
) As Task(Of TElement)
'用途
Dim instance As DbRawSqlQuery 
Dim predicate As Func(Of TElement, Boolean)
Dim cancellationToken As CancellationToken 
Dim returnValue As Task(Of TElement)

returnValue = instance.SingleOrDefaultAsync(predicate, _
    cancellationToken)
public Task<TElement> SingleOrDefaultAsync(
    Func<TElement, bool> predicate,
    CancellationToken cancellationToken
)
public:
Task<TElement>^ SingleOrDefaultAsync(
    Func<TElement, bool>^ predicate, 
    CancellationToken cancellationToken
)
member SingleOrDefaultAsync : 
        predicate:Func<'TElement, bool> * 
        cancellationToken:CancellationToken -> Task<'TElement> 
public function SingleOrDefaultAsync(
    predicate : Func<TElement, boolean>, 
    cancellationToken : CancellationToken
) : Task<TElement>

參數

傳回值

類型:System.Threading.Tasks.Task<TElement>
表示非同步作業的工作。工作結果包含查詢結果中滿足 predicate 中條件的單一項目,如果找不到這類項目,則為 default (TElement)。

例外狀況

例外狀況 條件
ArgumentNullException

predicate 為 null。

InvalidOperationException

超過一個項目符合 predicate 中的條件。

備註

不支援相同內容執行個體上的多個作用中作業。 使用 'await' 確保在此內容上呼叫另一個方法之前,所有非同步作業都已完成。

請參閱

參考

DbRawSqlQuery<TElement> 類別

SingleOrDefaultAsync 多載

System.Data.Entity.Infrastructure 命名空間