Queryable.LongCount Méthode

Définition

Retourne un Int64 qui représente le nombre d'éléments dans une séquence.Returns an Int64 that represents the number of elements in sequence.

Surcharges

LongCount<TSource>(IQueryable<TSource>)

Retourne un Int64 qui représente le nombre total d'éléments dans une séquence.Returns an Int64 that represents the total number of elements in a sequence.

LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

Retourne un Int64 qui représente le nombre d'éléments dans une séquence qui satisfont à une condition.Returns an Int64 that represents the number of elements in a sequence that satisfy a condition.

LongCount<TSource>(IQueryable<TSource>)

Retourne un Int64 qui représente le nombre total d'éléments dans une séquence.Returns an Int64 that represents the total number of elements in a sequence.

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

Paramètres de type

TSource

Le type des éléments de source.The type of the elements of source.

Paramètres

source
IQueryable<TSource>

IQueryable<T> qui contient les éléments à compter.An IQueryable<T> that contains the elements to be counted.

Retours

Int64

Nombre d'éléments de source.The number of elements in source.

Exceptions

source a la valeur null.source is null.

Le nombre d'éléments est supérieur à MaxValue.The number of elements exceeds MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser LongCount<TSource>(IQueryable<TSource>) pour compter les éléments d’un tableau.The following code example demonstrates how to use LongCount<TSource>(IQueryable<TSource>) to count the elements in an array.

string[] fruits = { "apple", "banana", "mango",
                      "orange", "passionfruit", "grape" };

long count = fruits.AsQueryable().LongCount();

Console.WriteLine("There are {0} fruits in the collection.", count);

/*
    This code produces the following output:

    There are 6 fruits in the collection.
*/
Dim fruits() As String = {"apple", "banana", "mango", _
                      "orange", "passionfruit", "grape"}

Dim count As Long = fruits.AsQueryable().LongCount()

MsgBox(String.Format("There are {0} fruits in the collection.", count))

' This code produces the following output:

' There are 6 fruits in the collection.

Remarques

La LongCount<TSource>(IQueryable<TSource>) méthode génère un MethodCallExpression qui représente l’appel de LongCount<TSource>(IQueryable<TSource>) lui-même comme une méthode générique construite.The LongCount<TSource>(IQueryable<TSource>) method generates a MethodCallExpression that represents calling LongCount<TSource>(IQueryable<TSource>) itself as a constructed generic method. Il passe ensuite MethodCallExpression à la Execute<TResult>(Expression) méthode de IQueryProvider représenté par la Provider propriété du source paramètre.It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Le comportement de la requête qui se produit suite à l’exécution d’une arborescence d’expressions qui représente l’appel de LongCount<TSource>(IQueryable<TSource>) dépend de l’implémentation du type du source paramètre.The query behavior that occurs as a result of executing an expression tree that represents calling LongCount<TSource>(IQueryable<TSource>) depends on the implementation of the type of the source parameter. Le comportement attendu est qu’il compte le nombre d’éléments dans source et retourne un Int64 .The expected behavior is that it counts the number of items in source and returns an Int64.

S’applique à

LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

Retourne un Int64 qui représente le nombre d'éléments dans une séquence qui satisfont à une condition.Returns an Int64 that represents the number of elements in a sequence that satisfy a condition.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long LongCount(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, bool> ^> ^ predicate);
public static long LongCount<TSource> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,bool>> predicate);
static member LongCount : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, bool>> -> int64
<Extension()>
Public Function LongCount(Of TSource) (source As IQueryable(Of TSource), predicate As Expression(Of Func(Of TSource, Boolean))) As Long

Paramètres de type

TSource

Le type des éléments de source.The type of the elements of source.

Paramètres

source
IQueryable<TSource>

IQueryable<T> qui contient les éléments à compter.An IQueryable<T> that contains the elements to be counted.

predicate
Expression<Func<TSource,Boolean>>

Fonction permettant de tester chaque élément par rapport à une condition.A function to test each element for a condition.

Retours

Int64

Nombre d'éléments de source qui satisfont à la condition définie dans la fonction de prédicat.The number of elements in source that satisfy the condition in the predicate function.

Exceptions

source ou predicate est null.source or predicate is null.

Le nombre d'éléments correspondants est supérieur à MaxValue.The number of matching elements exceeds MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) pour compter les éléments d’un tableau qui satisfont à une condition.The following code example demonstrates how to use LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) to count the elements in an array that satisfy a condition.

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

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

    const int Age = 3;

    // Count the number of Pet objects where Pet.Age is greater than 3.
    long count = pets.AsQueryable().LongCount(pet => pet.Age > Age);

    Console.WriteLine("There are {0} animals over age {1}.", count, Age);
}

/*
    This code produces the following output:

    There are 2 animals over age 3.
*/

Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

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

    Const Age As Integer = 3

    ' Count the number of Pet objects where Pet.Age is greater than 3.
    Dim count As Long = pets.AsQueryable().LongCount(Function(Pet) Pet.Age > Age)

    MsgBox(String.Format("There are {0} animals over age {1}.", count, Age))
End Sub

' This code produces the following output:

' There are 2 animals over age 3.

Remarques

Cette méthode a au moins un paramètre de type Expression<TDelegate> dont l’argument de type est l’un des Func<T,TResult> types.This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. Pour ces paramètres, vous pouvez passer une expression lambda et elle sera compilée dans un Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

La LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) méthode génère un MethodCallExpression qui représente l’appel de LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) lui-même comme une méthode générique construite.The LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) method generates a MethodCallExpression that represents calling LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) itself as a constructed generic method. Il passe ensuite MethodCallExpression à la Execute<TResult>(Expression) méthode de IQueryProvider représenté par la Provider propriété du source paramètre.It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Le comportement de la requête qui se produit suite à l’exécution d’une arborescence d’expressions qui représente l’appel de LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) dépend de l’implémentation du type du source paramètre.The query behavior that occurs as a result of executing an expression tree that represents calling LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) depends on the implementation of the type of the source parameter. Le comportement attendu est qu’il compte le nombre d’éléments dans source qui satisfont à la condition spécifiée par predicate et retourne un Int64 .The expected behavior is that it counts the number of items in source that satisfy the condition specified by predicate and returns an Int64.

S’applique à