Queryable.LongCount 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.
Retourneert een Int64 waarde die het aantal elementen op volgorde aangeeft.
Overloads
| Name | Description |
|---|---|
| LongCount<TSource>(IQueryable<TSource>) |
Retourneert een Int64 waarde die het totale aantal elementen in een reeks vertegenwoordigt. |
| LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) |
Retourneert een Int64 waarde die het aantal elementen in een reeks vertegenwoordigt dat voldoet aan een voorwaarde. |
LongCount<TSource>(IQueryable<TSource>)
Retourneert een Int64 waarde die het totale aantal elementen in een reeks vertegenwoordigt.
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
Type parameters
- TSource
Het type van de elementen van source.
Parameters
- source
- IQueryable<TSource>
Een IQueryable<T> die de elementen bevat die moeten worden geteld.
Retouren
Het aantal elementen in source.
Uitzonderingen
source is null.
Het aantal elementen overschrijdt Int64.MaxValue.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe LongCount<TSource>(IQueryable<TSource>) u de elementen in een matrix kunt tellen.
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.
Opmerkingen
De LongCount<TSource>(IQueryable<TSource>) methode genereert een MethodCallExpression die zichzelf aanroept LongCount<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 LongCount<TSource>(IQueryable<TSource>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aantal items in source telt en een Int64retourneert.
Van toepassing op
LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)
Retourneert een Int64 waarde die het aantal elementen in een reeks vertegenwoordigt dat voldoet aan een voorwaarde.
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
Type parameters
- TSource
Het type van de elementen van source.
Parameters
- source
- IQueryable<TSource>
Een IQueryable<T> die de elementen bevat die moeten worden geteld.
- predicate
- Expression<Func<TSource,Boolean>>
Een functie om elk element voor een voorwaarde te testen.
Retouren
Het aantal elementen in source die voldoen aan de voorwaarde in de predicaatfunctie.
Uitzonderingen
source of predicate is null.
Het aantal overeenkomende elementen overschrijdt Int64.MaxValue.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) u de elementen in een matrix kunt tellen die voldoen aan een voorwaarde.
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.
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 LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) methode genereert een MethodCallExpression die zichzelf aanroept LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) 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 LongCount<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat hiermee het aantal items wordt source geteld dat voldoet aan de voorwaarde die is opgegeven door predicate en een retourneert Int64.