Поделиться через


Queryable.Average Метод

Определение

Вычисляет среднее значение последовательности числовых значений.

Перегрузки

Имя Описание
Average(IQueryable<Single>)

Вычисляет среднее значение последовательности значений Single .

Average(IQueryable<Nullable<Int64>>)

Вычисляет среднее значение последовательности значений, допускающих Int64 значение NULL.

Average(IQueryable<Nullable<Int32>>)

Вычисляет среднее значение последовательности значений, допускающих Int32 значение NULL.

Average(IQueryable<Nullable<Double>>)

Вычисляет среднее значение последовательности значений, допускающих Double значение NULL.

Average(IQueryable<Nullable<Single>>)

Вычисляет среднее значение последовательности значений, допускающих Single значение NULL.

Average(IQueryable<Int64>)

Вычисляет среднее значение последовательности значений Int64 .

Average(IQueryable<Int32>)

Вычисляет среднее значение последовательности значений Int32 .

Average(IQueryable<Double>)

Вычисляет среднее значение последовательности значений Double .

Average(IQueryable<Decimal>)

Вычисляет среднее значение последовательности значений Decimal .

Average(IQueryable<Nullable<Decimal>>)

Вычисляет среднее значение последовательности значений, допускающих Decimal значение NULL.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

Вычисляет среднее значение последовательности значений Single , полученных путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

Вычисляет среднее значение последовательности значений, допускающих Single значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

Вычисляет среднее значение последовательности значений, допускающих Int64 значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

Вычисляет среднее значение последовательности значений, допускающих Double значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

Вычисляет среднее значение последовательности значений, допускающих Int32 значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

Вычисляет среднее значение последовательности значений Int64 , полученных путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

Вычисляет среднее значение последовательности значений Int32 , полученных путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

Вычисляет среднее значение последовательности значений Double , полученных путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

Вычисляет среднее значение последовательности значений Decimal , полученных путем вызова функции проекции для каждого элемента входной последовательности.

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

Вычисляет среднее значение последовательности значений, допускающих Decimal значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

Average(IQueryable<Single>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Single .

public:
[System::Runtime::CompilerServices::Extension]
 static float Average(System::Linq::IQueryable<float> ^ source);
public static float Average(this System.Linq.IQueryable<float> source);
static member Average : System.Linq.IQueryable<single> -> single
<Extension()>
Public Function Average (source As IQueryable(Of Single)) As Single

Параметры

source
IQueryable<Single>

Последовательность значений Single для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений.

Исключения

source равно null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Int32>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.AsQueryable().Average();

Console.WriteLine("The average grade is {0}.", average);

// This code produces the following output:
//
// The average grade is 77.6.
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

Dim average As Double = grades.AsQueryable().Average()

MsgBox(String.Format("The average grade is {0}.", average))

' This code produces the following output:
'
' The average grade is 77.6.

Комментарии

Метод Average(IQueryable<Single>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Single>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Single>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Nullable<Int64>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Int64 значение NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<Nullable<long>> ^ source);
public static double? Average(this System.Linq.IQueryable<long?> source);
static member Average : System.Linq.IQueryable<Nullable<int64>> -> Nullable<double>
<Extension()>
Public Function Average (source As IQueryable(Of Nullable(Of Long))) As Nullable(Of Double)

Параметры

source
IQueryable<Nullable<Int64>>

Последовательность значений, допускающих Int64 значение NULL, для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений или null если исходная последовательность пуста или содержит только null значения.

Исключения

source равно null.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Nullable<Int64>>) среднее значение последовательности значений.

long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.AsQueryable().Average();

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 133282081426.333.
Dim longs() As Nullable(Of Long) = {Nothing, 10007L, 37L, 399846234235L}

Dim average As Nullable(Of Double) = longs.AsQueryable().Average()

MsgBox(String.Format("The average is {0}.", average))

' This code produces the following output:
'
' The average is 133282081426.333.

Комментарии

Метод Average(IQueryable<Nullable<Int64>>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Nullable<Int64>>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Nullable<Int64>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Nullable<Int32>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Int32 значение NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<Nullable<int>> ^ source);
public static double? Average(this System.Linq.IQueryable<int?> source);
static member Average : System.Linq.IQueryable<Nullable<int>> -> Nullable<double>
<Extension()>
Public Function Average (source As IQueryable(Of Nullable(Of Integer))) As Nullable(Of Double)

Параметры

source
IQueryable<Nullable<Int32>>

Последовательность значений, допускающих Int32 значение NULL, для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений или null если исходная последовательность пуста или содержит только null значения.

Исключения

source равно null.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Nullable<Int64>>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.AsQueryable().Average();

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 133282081426.333.
Dim longs() As Nullable(Of Long) = {Nothing, 10007L, 37L, 399846234235L}

Dim average As Nullable(Of Double) = longs.AsQueryable().Average()

MsgBox(String.Format("The average is {0}.", average))

' This code produces the following output:
'
' The average is 133282081426.333.

Комментарии

Метод Average(IQueryable<Nullable<Int32>>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Nullable<Int32>>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Nullable<Int32>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Nullable<Double>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Double значение NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<Nullable<double>> ^ source);
public static double? Average(this System.Linq.IQueryable<double?> source);
static member Average : System.Linq.IQueryable<Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Average (source As IQueryable(Of Nullable(Of Double))) As Nullable(Of Double)

Параметры

source
IQueryable<Nullable<Double>>

Последовательность значений, допускающих Double значение NULL, для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений или null если исходная последовательность пуста или содержит только null значения.

Исключения

source равно null.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Nullable<Int64>>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.AsQueryable().Average();

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 133282081426.333.
Dim longs() As Nullable(Of Long) = {Nothing, 10007L, 37L, 399846234235L}

Dim average As Nullable(Of Double) = longs.AsQueryable().Average()

MsgBox(String.Format("The average is {0}.", average))

' This code produces the following output:
'
' The average is 133282081426.333.

Комментарии

Метод Average(IQueryable<Nullable<Double>>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Nullable<Double>>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Nullable<Double>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Nullable<Single>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Single значение NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Average(System::Linq::IQueryable<Nullable<float>> ^ source);
public static float? Average(this System.Linq.IQueryable<float?> source);
static member Average : System.Linq.IQueryable<Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Average (source As IQueryable(Of Nullable(Of Single))) As Nullable(Of Single)

Параметры

source
IQueryable<Nullable<Single>>

Последовательность значений, допускающих Single значение NULL, для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений или null если исходная последовательность пуста или содержит только null значения.

Исключения

source равно null.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Nullable<Int64>>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.AsQueryable().Average();

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 133282081426.333.
Dim longs() As Nullable(Of Long) = {Nothing, 10007L, 37L, 399846234235L}

Dim average As Nullable(Of Double) = longs.AsQueryable().Average()

MsgBox(String.Format("The average is {0}.", average))

' This code produces the following output:
'
' The average is 133282081426.333.

Комментарии

Метод Average(IQueryable<Nullable<Single>>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Nullable<Single>>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Nullable<Single>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Int64>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Int64 .

public:
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<long> ^ source);
public static double Average(this System.Linq.IQueryable<long> source);
static member Average : System.Linq.IQueryable<int64> -> double
<Extension()>
Public Function Average (source As IQueryable(Of Long)) As Double

Параметры

source
IQueryable<Int64>

Последовательность значений Int64 для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений.

Исключения

source равно null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Int32>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.AsQueryable().Average();

Console.WriteLine("The average grade is {0}.", average);

// This code produces the following output:
//
// The average grade is 77.6.
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

Dim average As Double = grades.AsQueryable().Average()

MsgBox(String.Format("The average grade is {0}.", average))

' This code produces the following output:
'
' The average grade is 77.6.

Комментарии

Метод Average(IQueryable<Int64>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Int64>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Int64>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Int32>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Int32 .

public:
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<int> ^ source);
public static double Average(this System.Linq.IQueryable<int> source);
static member Average : System.Linq.IQueryable<int> -> double
<Extension()>
Public Function Average (source As IQueryable(Of Integer)) As Double

Параметры

source
IQueryable<Int32>

Последовательность значений Int32 для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений.

Исключения

source равно null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Int32>) среднее значение последовательности значений.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.AsQueryable().Average();

Console.WriteLine("The average grade is {0}.", average);

// This code produces the following output:
//
// The average grade is 77.6.
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

Dim average As Double = grades.AsQueryable().Average()

MsgBox(String.Format("The average grade is {0}.", average))

' This code produces the following output:
'
' The average grade is 77.6.

Комментарии

Метод Average(IQueryable<Int32>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Int32>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Int32>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Double>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Double .

public:
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<double> ^ source);
public static double Average(this System.Linq.IQueryable<double> source);
static member Average : System.Linq.IQueryable<double> -> double
<Extension()>
Public Function Average (source As IQueryable(Of Double)) As Double

Параметры

source
IQueryable<Double>

Последовательность значений Double для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений.

Исключения

source равно null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Int32>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.AsQueryable().Average();

Console.WriteLine("The average grade is {0}.", average);

// This code produces the following output:
//
// The average grade is 77.6.
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

Dim average As Double = grades.AsQueryable().Average()

MsgBox(String.Format("The average grade is {0}.", average))

' This code produces the following output:
'
' The average grade is 77.6.

Комментарии

Метод Average(IQueryable<Double>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Double>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Double>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Decimal>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Decimal .

public:
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Average(System::Linq::IQueryable<System::Decimal> ^ source);
public static decimal Average(this System.Linq.IQueryable<decimal> source);
static member Average : System.Linq.IQueryable<decimal> -> decimal
<Extension()>
Public Function Average (source As IQueryable(Of Decimal)) As Decimal

Параметры

source
IQueryable<Decimal>

Последовательность значений Decimal для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений.

Исключения

source равно null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Int32>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.AsQueryable().Average();

Console.WriteLine("The average grade is {0}.", average);

// This code produces the following output:
//
// The average grade is 77.6.
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

Dim average As Double = grades.AsQueryable().Average()

MsgBox(String.Format("The average grade is {0}.", average))

' This code produces the following output:
'
' The average grade is 77.6.

Комментарии

Метод Average(IQueryable<Decimal>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Decimal>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Decimal>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average(IQueryable<Nullable<Decimal>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Decimal значение NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Average(System::Linq::IQueryable<Nullable<System::Decimal>> ^ source);
public static decimal? Average(this System.Linq.IQueryable<decimal?> source);
static member Average : System.Linq.IQueryable<Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Average (source As IQueryable(Of Nullable(Of Decimal))) As Nullable(Of Decimal)

Параметры

source
IQueryable<Nullable<Decimal>>

Последовательность значений, допускающих Decimal значение NULL, для вычисления среднего значения.

Возвращаемое значение

Среднее значение последовательности значений или null если исходная последовательность пуста или содержит только null значения.

Исключения

source равно null.

Примеры

В следующем примере кода показано, как вычислить Average(IQueryable<Nullable<Int64>>) среднее значение последовательности значений.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, замените элементы исходной последовательности элементами соответствующего числового типа.

long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.AsQueryable().Average();

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 133282081426.333.
Dim longs() As Nullable(Of Long) = {Nothing, 10007L, 37L, 399846234235L}

Dim average As Nullable(Of Double) = longs.AsQueryable().Average()

MsgBox(String.Format("The average is {0}.", average))

' This code produces the following output:
'
' The average is 133282081426.333.

Комментарии

Метод Average(IQueryable<Nullable<Decimal>>) создает объект MethodCallExpression , представляющий сам вызов Average(IQueryable<Nullable<Decimal>>) . Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average(IQueryable<Nullable<Decimal>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение в source.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Single , полученных путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static float Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, float> ^> ^ selector);
public static float Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static float Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, single>> -> single
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, single>> -> single
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Single))) As Single

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Single>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений.

Атрибуты

Исключения

source или selector есть null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Single значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<float>> ^> ^ selector);
public static float? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float?>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static float? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float?>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<single>>> -> Nullable<single>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<single>>> -> Nullable<single>
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Single)))) As Nullable(Of Single)

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Nullable<Single>>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений или nullsource если последовательность пуста или содержит только null значения.

Атрибуты

Исключения

source или selector есть null.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод, представленный IQueryProviderProvider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Int64 значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<long>> ^> ^ selector);
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long?>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long?>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int64>>> -> Nullable<double>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int64>>> -> Nullable<double>
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Long)))) As Nullable(Of Double)

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Nullable<Int64>>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений или nullsource если последовательность пуста или содержит только null значения.

Атрибуты

Исключения

source или selector есть null.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Double значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<double>> ^> ^ selector);
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double?>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double?>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<double>>> -> Nullable<double>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<double>>> -> Nullable<double>
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Double)))) As Nullable(Of Double)

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Nullable<Double>>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений или nullsource если последовательность пуста или содержит только null значения.

Атрибуты

Исключения

source или selector есть null.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Int32 значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<int>> ^> ^ selector);
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int?>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int?>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int>>> -> Nullable<double>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int>>> -> Nullable<double>
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Integer)))) As Nullable(Of Double)

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Nullable<Int32>>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений или nullsource если последовательность пуста или содержит только null значения.

Атрибуты

Исключения

source или selector есть null.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод, представленный IQueryProviderProvider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Int64 , полученных путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, long> ^> ^ selector);
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int64>> -> double
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int64>> -> double
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Long))) As Double

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Int64>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений.

Атрибуты

Исключения

source или selector есть null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Int32 , полученных путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, int> ^> ^ selector);
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int>> -> double
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int>> -> double
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Integer))) As Double

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Int32>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений.

Атрибуты

Исключения

source или selector есть null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Double , полученных путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, double> ^> ^ selector);
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static double Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, double>> -> double
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, double>> -> double
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Double))) As Double

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Double>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений.

Атрибуты

Исключения

source или selector есть null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений Decimal , полученных путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, System::Decimal> ^> ^ selector);
public static decimal Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static decimal Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, decimal>> -> decimal
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, decimal>> -> decimal
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Decimal))) As Decimal

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений, используемых для вычисления среднего значения.

selector
Expression<Func<TSource,Decimal>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений.

Атрибуты

Исключения

source или selector есть null.

source не содержит элементов.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к

Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Вычисляет среднее значение последовательности значений, допускающих Decimal значение NULL, полученное путем вызова функции проекции для каждого элемента входной последовательности.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Average(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<System::Decimal>> ^> ^ selector);
public static decimal? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal?>> selector);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static decimal? Average<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal?>> selector);
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<decimal>>> -> Nullable<decimal>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Average : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<decimal>>> -> Nullable<decimal>
<Extension()>
Public Function Average(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Decimal)))) As Nullable(Of Decimal)

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Последовательность значений для вычисления среднего значения.

selector
Expression<Func<TSource,Nullable<Decimal>>>

Функция проекции, применяемая к каждому элементу.

Возвращаемое значение

Среднее значение последовательности значений или nullsource если последовательность пуста или содержит только null значения.

Атрибуты

Исключения

source или selector есть null.

Примеры

В следующем примере кода показано, как вычислить Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) среднюю String длину в последовательности значений типа String.

Замечание

В этом примере кода используется перегрузка метода, отличающегося от конкретной перегрузки, описанной в этой статье. Чтобы расширить пример перегрузки, описанной в этой статье, измените текст selector функции.

string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

// Determine the average string length in the array.
double average = fruits.AsQueryable().Average(s => s.Length);

Console.WriteLine("The average string length is {0}.", average);

// This code produces the following output:
//
// The average string length is 6.5.
Dim fruits() As String = {"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Determine the average string length in the array.
Dim average As Double = fruits.AsQueryable().Average(Function(s) s.Length)

MsgBox(String.Format("The average string length is {0}.", average))

' This code produces the following output:
'
' The average string length is 6.5.

Комментарии

Этот метод имеет по крайней мере один параметр типа, аргумент типа Expression<TDelegate> которого является одним из Func<T,TResult> типов. Для этих параметров можно передать лямбда-выражение и скомпилировать его в Expression<TDelegate>лямбда-выражение.

Метод Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) создает объект MethodCallExpression , представляющий Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Average<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он вычисляет среднее значение source после вызова selector каждого значения.

Применяется к