Queryable.Max Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) |
Roept een projectiefunctie aan op elk element van een algemeen IQueryable<T> element en retourneert de maximum resulterende waarde. |
| Max<TSource>(IQueryable<TSource>) |
Retourneert de maximumwaarde in een algemeen IQueryable<T>. |
Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)
Roept een projectiefunctie aan op elk element van een algemeen IQueryable<T> element en retourneert de maximum resulterende waarde.
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);
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
Type parameters
- TSource
Het type van de elementen van source.
- TResult
Het type van de waarde die wordt geretourneerd door de functie die wordt vertegenwoordigd door selector.
Parameters
- source
- IQueryable<TSource>
Een reeks waarden om het maximum van te bepalen.
- selector
- Expression<Func<TSource,TResult>>
Een projectiefunctie die op elk element moet worden toegepast.
Retouren
De maximumwaarde in de reeks.
Uitzonderingen
source of selector is null.
source bevat geen elementen.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) u de maximumwaarde in een reeks geprojecteerde waarden kunt bepalen.
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.
Opmerkingen
Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.
De Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) methode genereert een MethodCallExpression die zichzelf aanroept Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.
Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Max<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element in source en de maximumwaarde retourneert.
Van toepassing op
Max<TSource>(IQueryable<TSource>)
Retourneert de maximumwaarde in een algemeen IQueryable<T>.
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);
static member Max : System.Linq.IQueryable<'Source> -> 'Source
<Extension()>
Public Function Max(Of TSource) (source As IQueryable(Of TSource)) As TSource
Type parameters
- TSource
Het type van de elementen van source.
Parameters
- source
- IQueryable<TSource>
Een reeks waarden om het maximum van te bepalen.
Retouren
De maximumwaarde in de reeks.
Uitzonderingen
source is null.
source bevat geen elementen.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe Max<TSource>(IQueryable<TSource>) u de maximumwaarde in een reeks kunt bepalen.
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.
Opmerkingen
De Max<TSource>(IQueryable<TSource>) methode genereert een MethodCallExpression die zichzelf aanroept Max<TSource>(IQueryable<TSource>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.
Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Max<TSource>(IQueryable<TSource>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de maximumwaarde retourneert in source.