QueryableExtensions.AverageAsync<TSource> 方法 (IQueryable<TSource>, Expression<Func<TSource, Decimal>>, CancellationToken)
[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]
非同步計算在輸入序列中各元素上叫用投影函式後所取得之 Decimal 值序列的平均值。
命名空間: System.Data.Entity
組件: EntityFramework (在 EntityFramework.dll 中)
語法
'宣告
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
<ExtensionAttribute> _
<SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")> _
Public Shared Function AverageAsync(Of TSource) ( _
source As IQueryable(Of TSource), _
selector As Expression(Of Func(Of TSource, Decimal)), _
cancellationToken As CancellationToken _
) As Task(Of Decimal)
'用途
Dim source As IQueryable(Of TSource)
Dim selector As Expression(Of Func(Of TSource, Decimal))
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of Decimal)
returnValue = source.AverageAsync(selector, _
cancellationToken)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
[SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
public static Task<decimal> AverageAsync<TSource>(
this IQueryable<TSource> source,
Expression<Func<TSource, decimal>> selector,
CancellationToken cancellationToken
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
[ExtensionAttribute]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1011:ConsiderPassingBaseTypesAsParameters")]
public:
generic<typename TSource>
static Task<Decimal>^ AverageAsync(
IQueryable<TSource>^ source,
Expression<Func<TSource, Decimal>^>^ selector,
CancellationToken cancellationToken
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
[<SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")>]
static member AverageAsync :
source:IQueryable<'TSource> *
selector:Expression<Func<'TSource, decimal>> *
cancellationToken:CancellationToken -> Task<decimal>
JScript does not support generic types and methods.
類型參數
- TSource
source 之元素的類型。
參數
- source
類型:System.Linq.IQueryable<TSource>
要計算平均值的值序列。
- selector
類型:System.Linq.Expressions.Expression<Func<TSource, Decimal>>
要套用到每個元素的投影函式。
- cancellationToken
類型:System.Threading.CancellationToken
等候工作完成時要觀察的 CancellationToken。
傳回值
類型:System.Threading.Tasks.Task<Decimal>
表示非同步作業的工作。工作結果包含值序列的平均值。
使用注意事項
在 Visual Basic 和 C# 中,您可以在任何 IQueryable<TSource> 類型物件中呼叫這個方法以做為執行個體。使用執行個體方法語法呼叫這個方法時,請省略第一個參數。如需詳細資訊,請參閱 https://msdn.microsoft.com/zh-tw/library/bb384936(v=vs.113)或 https://msdn.microsoft.com/zh-tw/library/bb383977(v=vs.113)。
例外狀況
例外狀況 | 條件 |
---|---|
ArgumentNullException | source 或 selector 為 null。 |
InvalidOperationException | source 不會實作 IDbAsyncQueryProvider。 |
InvalidOperationException | source 沒有包含任何元素。 |
備註
不支援相同內容執行個體上的多個作用中作業。 使用 'await' 確保在此內容上呼叫另一個方法之前,所有非同步作業都已完成。