Share via


HpcLinqQueryable.AverageAsQuery Method (IQueryable, Expression)

Creates a query that calculates the average of a set of Double values that are calculated from a set of records by using the specified function.

Namespace: Microsoft.Hpc.Linq
Assembly: Microsoft.Hpc.Linq (in Microsoft.Hpc.Linq.dll)

Usage

'Usage
Dim source As IQueryable(Of TSource)
Dim selector As Expression(Of Func(Of TSource, Double))
Dim returnValue As IQueryable(Of Double)

returnValue = HpcLinqQueryable.AverageAsQuery(source, selector)

Syntax

'Declaration
<ExtensionAttribute> _
Public Shared Function AverageAsQuery(Of TSource) ( _
    source As IQueryable(Of TSource), _
    selector As Expression(Of Func(Of TSource, Double)) _
) As IQueryable(Of Double)
[ExtensionAttribute] 
public static IQueryable<double> AverageAsQuery<TSource> (
    IQueryable<TSource> source,
    Expression<Func<TSource,double>> selector
)
[ExtensionAttribute] 
public:
generic<typename TSource>
static IQueryable<double>^ AverageAsQuery (
    IQueryable<TSource>^ source, 
    Expression<Func<TSource, double>^>^ selector
)
J# supports the use of generic APIs, but not the declaration of new ones.
JScript does not support generic types or methods.

GenericParameters

  • TSource
    The type of the records in the source parameter.

Parameters

  • source
    A System.Linq.IQueryable<TSource> interface for the set of records from which you want to calculate Double values that you then want to average.

Return Value

An IQueryable interface for the query.

Exceptions

Exception type Condition
ArgumentNullException

The specified source or selector parameter is a null reference (Nothing in Visual Basic).

Remarks

Use this method if you want to perform the same query as the Average method, but want to delay running the query instead of generating results immediately.

Use the Submit method to run the query. Use the GetEnumerator method or the foreach statement of the C# language (For Each in Visual Basic) to get the results of the query. The enumerator contains a single Double element, which is the average of the values that the specified function calculates from each record.

To create a query that calculates the average of the Double values from a set of records without applying a function to the records, use the AverageAsQuery(Generic IQueryable) form of the method. For information about versions of this method that calculate the average for values with other data types, see the AverageAsQuery method.

In Visual Basic and C#, you can call this method as an instance method on any object of type IQueryable<TSource>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

This method has at least one parameter of type Expression with a type argument that is one of the Func types. For these parameters, you can pass in a lambda expression and it compiles to an Expression.

For more information about how the query runs and its behavior, see the Remarks section for the Average method.

Platform Note: This method was introduced in Windows HPC Server 2008 R2 with Service Pack 2 (SP2) and is not supported in previous versions.(SP2) and is not supported in previous versions.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows XP, Windows Vista, Windows 7, Windows 8, Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012

Target Platforms

Windows XP, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, with HPC Pack Client Utilities

See Also

Reference

HpcLinqQueryable Class
HpcLinqQueryable Members
Microsoft.Hpc.Linq Namespace
Average
AverageAsQuery(Generic IQueryable)
Average

Build Date:

2013-04-22