Queryable.Max Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) |
Appelle une fonction de projection sur chaque élément d'un IQueryable<T> générique et retourne la valeur résultante maximale. |
Max<TSource>(IQueryable<TSource>) |
Retourne la valeur maximale dans un IQueryable<T>générique. |
Max<TSource>(IQueryable<TSource>, IComparer<TSource>) |
Retourne la valeur maximale dans un IQueryable<T>générique. |
Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Appelle une fonction de projection sur chaque élément d'un IQueryable<T> générique et retourne la valeur résultante maximale.
public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
static TResult Max(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, TResult> ^> ^ selector);
public static TResult Max<TSource,TResult> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,TResult>> selector);
public static TResult? Max<TSource,TResult> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,TResult>> selector);
static member Max : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, 'Result>> -> 'Result
<Extension()>
Public Function Max(Of TSource, TResult) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, TResult))) As TResult
Paramètres de type
- TSource
Le type des éléments de source
.
- TResult
Type de la valeur retournée par la fonction représentée par selector
.
Paramètres
- source
- IQueryable<TSource>
Séquence de valeurs dans laquelle rechercher la valeur maximale.
- selector
- Expression<Func<TSource,TResult>>
Fonction de projection à appliquer à chaque élément.
Retours
Valeur maximale dans la séquence.
Exceptions
source
ou selector
est null
.
source
ne contient aucun élément.
Exemples
L’exemple de code suivant montre comment utiliser Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) pour déterminer la valeur maximale dans une séquence de valeurs projetées.
class Pet
{
public string Name { get; set; }
public int Age { get; set; }
}
public static void MaxEx2()
{
Pet[] pets = { new Pet { Name="Barley", Age=8 },
new Pet { Name="Boots", Age=4 },
new Pet { Name="Whiskers", Age=1 } };
// Add Pet.Age to the length of Pet.Name
// to determine the "maximum" Pet object in the array.
int max =
pets.AsQueryable().Max(pet => pet.Age + pet.Name.Length);
Console.WriteLine(
"The maximum pet age plus name length is {0}.",
max);
}
/*
This code produces the following output:
The maximum pet age plus name length is 14.
*/
Structure Pet
Public Name As String
Public Age As Integer
End Structure
Shared Sub MaxEx2()
Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8}, _
New Pet With {.Name = "Boots", .Age = 4}, _
New Pet With {.Name = "Whiskers", .Age = 1}}
' Add Pet.Age to the length of Pet.Name
' to determine the "maximum" Pet object in the array.
Dim max As Integer = _
pets.AsQueryable().Max(Function(pet) pet.Age + pet.Name.Length)
MsgBox(String.Format("The maximum pet age plus name length is {0}.", max))
'This code produces the following output:
'The maximum pet age plus name length is 14.
Remarques
Cette méthode a au moins un paramètre de type Expression<TDelegate> dont l’argument type est l’un Func<T,TResult> des types. Pour ces paramètres, vous pouvez passer une expression lambda et elle sera compilée dans un Expression<TDelegate>.
La Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) méthode génère un MethodCallExpression qui représente l’appel Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) de lui-même en tant que méthode générique construite. Il passe ensuite le MethodCallExpression à la Execute<TResult>(Expression) méthode du IQueryProvider représenté par la Provider propriété du source
paramètre .
Le comportement de requête qui se produit à la suite de l’exécution d’une arborescence d’expressions qui représente l’appel Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) dépend de l’implémentation du type du source
paramètre. Le comportement attendu est qu’il appelle selector
sur chaque élément dans source
et retourne la valeur maximale.
S’applique à
Max<TSource>(IQueryable<TSource>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Retourne la valeur maximale dans un IQueryable<T>générique.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static TSource Max(System::Linq::IQueryable<TSource> ^ source);
public static TSource Max<TSource> (this System.Linq.IQueryable<TSource> source);
public static TSource? Max<TSource> (this System.Linq.IQueryable<TSource> source);
static member Max : System.Linq.IQueryable<'Source> -> 'Source
<Extension()>
Public Function Max(Of TSource) (source As IQueryable(Of TSource)) As TSource
Paramètres de type
- TSource
Le type des éléments de source
.
Paramètres
- source
- IQueryable<TSource>
Séquence de valeurs dans laquelle rechercher la valeur maximale.
Retours
Valeur maximale dans la séquence.
Exceptions
source
a la valeur null
.
source
ne contient aucun élément.
Exemples
L’exemple de code suivant montre comment utiliser Max<TSource>(IQueryable<TSource>) pour déterminer la valeur maximale dans une séquence.
List<long> longs = new List<long> { 4294967296L, 466855135L, 81125L };
long max = longs.AsQueryable().Max();
Console.WriteLine("The largest number is {0}.", max);
/*
This code produces the following output:
The largest number is 4294967296.
*/
Dim longs As New List(Of Long)(New Long() {4294967296L, 466855135L, 81125L})
Dim max As Long = longs.AsQueryable().Max()
MsgBox(String.Format("The largest number is {0}.", max))
'This code produces the following output:
'The largest number is 4294967296.
Remarques
La Max<TSource>(IQueryable<TSource>) méthode génère un MethodCallExpression qui représente l’appel Max<TSource>(IQueryable<TSource>) de lui-même en tant que méthode générique construite. Il passe ensuite le MethodCallExpression à la Execute<TResult>(Expression) méthode du IQueryProvider représenté par la Provider propriété du source
paramètre .
Le comportement de requête qui se produit à la suite de l’exécution d’une arborescence d’expressions qui représente l’appel Max<TSource>(IQueryable<TSource>) dépend de l’implémentation du type du source
paramètre. Le comportement attendu est qu’il retourne la valeur maximale dans source
.
S’applique à
Max<TSource>(IQueryable<TSource>, IComparer<TSource>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Retourne la valeur maximale dans un IQueryable<T>générique.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static TSource Max(System::Linq::IQueryable<TSource> ^ source, System::Collections::Generic::IComparer<TSource> ^ comparer);
public static TSource? Max<TSource> (this System.Linq.IQueryable<TSource> source, System.Collections.Generic.IComparer<TSource>? comparer);
static member Max : System.Linq.IQueryable<'Source> * System.Collections.Generic.IComparer<'Source> -> 'Source
<Extension()>
Public Function Max(Of TSource) (source As IQueryable(Of TSource), comparer As IComparer(Of TSource)) As TSource
Paramètres de type
- TSource
Le type des éléments de source
.
Paramètres
- source
- IQueryable<TSource>
Séquence de valeurs pour laquelle déterminer la valeur maximale.
- comparer
- IComparer<TSource>
IComparer<T> pour comparer les valeurs.
Retours
Valeur maximale dans la séquence.
Exceptions
source
a la valeur null
.