Exporter (0) Imprimer
Développer tout
Développer Réduire

Queryable.Average<TSource>, méthode (IQueryable<TSource>, Expression<Func<TSource, Nullable<Decimal>>>)

Mise à jour : novembre 2007

Calcule la moyenne d'une séquence de valeurs Decimal nullables obtenue en appelant une fonction de projection sur chaque élément de la séquence d'entrée.

Espace de noms :  System.Linq
Assembly :  System.Core (dans System.Core.dll)

public static Nullable<decimal> Average<TSource>(
	this IQueryable<TSource> source,
	Expression<Func<TSource, Nullable<decimal>>> selector
)

J# prend en charge l'utilisation d'API génériques mais pas la déclaration de nouvelles API.
JScript ne prend pas en charge les types ou les méthodes génériques.

Paramètres de type

TSource

Type des éléments de source.

Paramètres

source
Type : System.Linq.IQueryable<TSource>

Séquence de valeurs dont la moyenne doit être calculée.

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

Fonction de projection à appliquer à chaque élément.

Valeur de retour

Type : System.Nullable<Decimal>

Moyenne de la séquence de valeurs ou null si la séquence source est vide ou ne contient que des valeurs null.

Remarque sur l'utilisation

En Visual Basic et C#, vous pouvez appeler cette méthode comme une méthode d'instance sur n'importe quel objet de type IQueryable<TSource>. Lorsque vous utilisez la syntaxe des méthodes d'instance pour appeler cette méthode, omettez le premier paramètre. Pour plus d'informations, consultez Méthodes d'extension (Visual Basic) ou Méthodes d'extension (Guide de programmation C#).

ExceptionCondition
ArgumentNullException

source ou selector est null.

Cette méthode a au moins un paramètre de type Expression<TDelegate> dont l'argument de type est l'un des types Func<T, TResult>. Pour ces paramètres, vous pouvez les passer dans une expression lambda et elle sera compilée en une Expression<TDelegate>.

La méthode Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Nullable<Decimal>>>) génère une MethodCallExpression qui représente l'appel de Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Nullable<Decimal>>>) à lui-même en tant que méthode générique construite. Il passe alors la MethodCallExpression à la méthode Execute<TResult>(Expression) du IQueryProvider représenté par la propriété Provider du paramètre source.

Le comportement de requête résultant de l'exécution d'une arborescence de l'expression qui représente l'appel de Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Nullable<Decimal>>>) dépend de l'implémentation du type du paramètre source. Le comportement attendu est qu'il calcule la moyenne des valeurs de source après avoir appelé selector sur chaque valeur.

L'exemple de code suivant montre comment utiliser Average<TSource>(IQueryable<TSource>, Expression<Func<TSource, Int32>>) pour calculer la longueur String moyenne dans une séquence de valeurs de type String.

Remarque :

Cet exemple de code utilise une surcharge de cette méthode surchargée qui est différente de la surcharge spécifique décrite par cette rubrique. Pour étendre l'exemple à cette rubrique, modifiez le corps de la fonction sélecteur.

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. 



Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft