Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Queryable.Average<TSource>-Methode: (IQueryable<TSource>, Expression<Func<TSource, Int32>>)

 

Veröffentlicht: Oktober 2016

Berechnet den Durchschnitt einer Sequenz von Int32 Werte, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.

Namespace:   System.Linq
Assembly:  System.Core (in System.Core.dll)

public static double Average<TSource>(
	this IQueryable<TSource> source,
	Expression<Func<TSource, int>> selector
)

Parameter

source
Type: System.Linq.IQueryable<TSource>

Eine Sequenz von Werten der Durchschnitt berechnet werden soll.

selector
Type: System.Linq.Expressions.Expression<Func<TSource, Int32>>

Eine Projektionsfunktion auf jedes Element angewendet werden soll.

Rückgabewert

Type: System.Double

Der Durchschnitt der Sequenz von Werten.

Typparameter

TSource

Der Typ der Elemente von source.

Exception Condition
ArgumentNullException

source oder selector ist null.

InvalidOperationException

source enthält keine Elemente.

Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> deren Typargument ist eines der Func<T, TResult> Typen. Für diese Parameter können Sie einen Lambda-Ausdruck übergeben, und es werden kompiliert, um eine Expression<TDelegate>.

Die Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Int32>>) -Methode generiert eine MethodCallExpression Aufruf darstellt Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Int32>>) sich selbst als konstruierte generische Methode. Anschließend übergibt der MethodCallExpression zu der Execute<TResult>(Expression) Methode der IQueryProvider durch dargestellt die Provider Eigenschaft der source Parameter.

Das Abfrageverhalten durch das Ausführen einer Ausdrucksbaumstruktur, die aufrufende darstellt, Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Int32>>) hängt von der Implementierung des Typs der source Parameter. Das erwartete Verhalten ist, dass den Durchschnitt der Werte in berechnet source nach dem Aufruf von selector für jeden Wert.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Int32>>) zum Berechnen des Durchschnitts String Länge in einer Sequenz von Werten des Typs 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. 

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.1
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: