Queryable.Min Metoda

Definicja

Przeciążenia

Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)

Wywołuje funkcję projekcji dla każdego elementu ogólnego IQueryable<T> i zwraca minimalną wartość wynikową.

Min<TSource>(IQueryable<TSource>)

Zwraca minimalną wartość ogólnej IQueryable<T>.

Min<TSource>(IQueryable<TSource>, IComparer<TSource>)

Zwraca wartość minimalną w ogólnym obiekcie IQueryable<T>.

Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)

Wywołuje funkcję projekcji dla każdego elementu ogólnego IQueryable<T> i zwraca minimalną wartość wynikową.

public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static TResult Min(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, TResult> ^> ^ selector);
public static TResult Min<TSource,TResult> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,TResult>> selector);
public static TResult? Min<TSource,TResult> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,TResult>> selector);
static member Min : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, 'Result>> -> 'Result
<Extension()>
Public Function Min(Of TSource, TResult) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, TResult))) As TResult

Parametry typu

TSource

Typ elementów elementu source.

TResult

Typ wartości zwracanej przez funkcję reprezentowaną przez selector.

Parametry

source
IQueryable<TSource>

Sekwencja wartości określających wartość minimalną.

selector
Expression<Func<TSource,TResult>>

Funkcja projekcji, która ma być stosowana do każdego elementu.

Zwraca

TResult

Minimalna wartość w sekwencji.

Wyjątki

source lub selector ma wartość null.

source nie zawiera żadnych elementów.

Przykłady

W poniższym przykładzie kodu pokazano, jak używać Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) metody określania wartości minimalnej w sekwencji przewidywanych wartości.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx2()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    // Get the Pet object that has the smallest Age value.
    int min = pets.AsQueryable().Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
    This code produces the following output:

    The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Shared Sub MinEx2()
    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}}

    ' Get the Pet object that has the smallest Age value.
    Dim min As Integer = pets.AsQueryable().Min(Function(pet) pet.Age)

    MsgBox(String.Format("The youngest animal is age {0}.", min))
End Sub

'This code produces the following output:

'The youngest animal is age 1.

Uwagi

Ta metoda ma co najmniej jeden parametr typu Expression<TDelegate> , którego argument type jest jednym z Func<T,TResult> typów. Dla tych parametrów można przekazać wyrażenie lambda i zostanie skompilowane do elementu Expression<TDelegate>.

Metoda Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) generuje obiekt MethodCallExpression , który reprezentuje wywołanie Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) siebie jako skonstruowaną metodę ogólną. Następnie przekazuje MethodCallExpression wartość do Execute<TResult>(Expression) metody IQueryProvider reprezentowanej przez Provider właściwość parametru source .

Zachowanie zapytania, które występuje w wyniku wykonania drzewa wyrażeń reprezentującego wywołanie Min<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>) , zależy od implementacji typu parametru source . Oczekiwane zachowanie polega na tym, że wywołuje selector on każdy element w source obiekcie i zwraca wartość minimalną.

Dotyczy

Min<TSource>(IQueryable<TSource>)

Zwraca minimalną wartość ogólnej IQueryable<T>.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Min(System::Linq::IQueryable<TSource> ^ source);
public static TSource Min<TSource> (this System.Linq.IQueryable<TSource> source);
public static TSource? Min<TSource> (this System.Linq.IQueryable<TSource> source);
static member Min : System.Linq.IQueryable<'Source> -> 'Source
<Extension()>
Public Function Min(Of TSource) (source As IQueryable(Of TSource)) As TSource

Parametry typu

TSource

Typ elementów elementu source.

Parametry

source
IQueryable<TSource>

Sekwencja wartości określających wartość minimalną.

Zwraca

TSource

Minimalna wartość w sekwencji.

Wyjątki

source to null.

source nie zawiera żadnych elementów.

Przykłady

W poniższym przykładzie kodu pokazano, jak za pomocą Min<TSource>(IQueryable<TSource>) metody określić wartość minimalną w sekwencji.

double[] doubles = { 1.5E+104, 9E+103, -2E+103 };

double min = doubles.AsQueryable().Min();

Console.WriteLine("The smallest number is {0}.", min);

/*
    This code produces the following output:

    The smallest number is -2E+103.
*/
Dim doubles() As Double = {1.5E+104, 9.0E+103, -2.0E+103}

Dim min As Double = doubles.AsQueryable().Min()

MsgBox(String.Format("The smallest number is {0}.", min))

'This code produces the following output:

'The smallest number is -2E+103.

Uwagi

Metoda Min<TSource>(IQueryable<TSource>) generuje obiekt MethodCallExpression , który reprezentuje wywołanie Min<TSource>(IQueryable<TSource>) siebie jako skonstruowaną metodę ogólną. Następnie przekazuje MethodCallExpression wartość do Execute<TResult>(Expression) metody IQueryProvider reprezentowanej przez Provider właściwość parametru source .

Zachowanie zapytania, które występuje w wyniku wykonania drzewa wyrażeń reprezentującego wywołanie Min<TSource>(IQueryable<TSource>) , zależy od implementacji typu parametru source . Oczekiwane zachowanie polega na tym, że zwraca wartość minimalną w .source

Dotyczy

Min<TSource>(IQueryable<TSource>, IComparer<TSource>)

Zwraca wartość minimalną w ogólnym obiekcie IQueryable<T>.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Min(System::Linq::IQueryable<TSource> ^ source, System::Collections::Generic::IComparer<TSource> ^ comparer);
public static TSource? Min<TSource> (this System.Linq.IQueryable<TSource> source, System.Collections.Generic.IComparer<TSource>? comparer);
static member Min : System.Linq.IQueryable<'Source> * System.Collections.Generic.IComparer<'Source> -> 'Source
<Extension()>
Public Function Min(Of TSource) (source As IQueryable(Of TSource), comparer As IComparer(Of TSource)) As TSource

Parametry typu

TSource

Typ elementów elementu source.

Parametry

source
IQueryable<TSource>

Kolejność wartości do określenia wartości minimalnej.

comparer
IComparer<TSource>

Element IComparer<T> do porównywania wartości.

Zwraca

TSource

Minimalna wartość w sekwencji.

Wyjątki

source to null.

Żaden obiekt w programie source nie implementuje interfejsu IComparable lub IComparable<T> .

Dotyczy