Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Queryable.Count<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>)

 

Data di pubblicazione: ottobre 2016

Restituisce il numero di elementi nella sequenza che soddisfa una condizione specificata.

Spazio dei nomi:   System.Linq
Assembly:  System.Core (in System.Core.dll)

public static int Count<TSource>(
	this IQueryable<TSource> source,
	Expression<Func<TSource, bool>> predicate
)

Parametri

source
Type: System.Linq.IQueryable<TSource>

Un IQueryable<T> che contiene gli elementi da contare.

predicate
Type: System.Linq.Expressions.Expression<Func<TSource, Boolean>>

Funzione per testare ogni elemento rispetto a una condizione.

Valore restituito

Type: System.Int32

Il numero di elementi nella sequenza che soddisfa la condizione nella funzione predicativa.

Parametri tipo

TSource

Tipo degli elementi di source.

Exception Condition
ArgumentNullException

source o predicate è null.

OverflowException

Il numero di elementi in source è maggiore di MaxValue.

Questo metodo contiene almeno un parametro di tipo Expression<TDelegate> il cui argomento di tipo è uno del Func<T, TResult> tipi. Per questi parametri, è possibile passare un'espressione lambda e verrà compilato in un Expression<TDelegate>.

Il Count<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) metodo genera un MethodCallExpression che rappresenta una chiamata Count<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) stesso come un metodo generico costruito. Passa quindi il MethodCallExpression per il Execute<TResult>(Expression) metodo il IQueryProvider rappresentato dal Provider proprietà del source parametro.

Il comportamento della query che si verifica in seguito all'esecuzione di una struttura ad albero dell'espressione che rappresenta una chiamata Count<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) dipende dall'implementazione del tipo di source parametro. Il comportamento previsto è viene contato il numero di elementi in source che soddisfano la condizione specificata da predicate.

Esempio di codice seguente viene illustrato come utilizzare Count<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) per contare gli elementi in una sequenza che soddisfa una condizione.

class Pet
{
    public string Name { get; set; }
    public bool Vaccinated { get; set; }
}

public static void CountEx2()
{
    // Create an array of Pet objects.
    Pet[] pets = { new Pet { Name="Barley", Vaccinated=true },
                   new Pet { Name="Boots", Vaccinated=false },
                   new Pet { Name="Whiskers", Vaccinated=false } };

    // Count the number of unvaccinated pets in the array.
    int numberUnvaccinated =
        pets.AsQueryable().Count(p => p.Vaccinated == false);

    Console.WriteLine(
        "There are {0} unvaccinated animals.",
        numberUnvaccinated);
}

// This code produces the following output:
//
// There are 2 unvaccinated animals.

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 3.5
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.1
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: