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.Single<TSource>(IQueryable<TSource>)

 

Data di pubblicazione: ottobre 2016

Restituisce l'unico elemento di una sequenza e genera un'eccezione se nella sequenza non è presente esattamente un elemento.

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

public static TSource Single<TSource>(
	this IQueryable<TSource> source
)

Parametri

source
Type: System.Linq.IQueryable<TSource>

Un IQueryable<T> per restituire il singolo elemento.

Valore restituito

Type: TSource

Singolo elemento della sequenza di input.

Parametri tipo

TSource

Tipo degli elementi di source.

Exception Condition
ArgumentNullException

source è null.

InvalidOperationException

source dispone di più di un elemento.

Il Single<TSource>(IQueryable<TSource>) metodo genera un MethodCallExpression che rappresenta una chiamata Single<TSource>(IQueryable<TSource>) 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 Single<TSource>(IQueryable<TSource>) dipende dall'implementazione del tipo di source parametro. Il comportamento previsto è che restituisce il singolo elemento source.

Esempio di codice seguente viene illustrato come utilizzare Single<TSource>(IQueryable<TSource>) per selezionare l'unico elemento di matrice.

// Create two arrays.
string[] fruits1 = { "orange" };
string[] fruits2 = { "orange", "apple" };

// Get the only item in the first array.
string fruit1 = fruits1.AsQueryable().Single();

Console.WriteLine("First query: " + fruit1);

try
{
    // Try to get the only item in the second array.
    string fruit2 = fruits2.AsQueryable().Single();
    Console.WriteLine("Second query: " + fruit2);
}
catch (System.InvalidOperationException)
{
    Console.WriteLine(
        "Second query: The collection does not contain exactly one element."
        );
}

/*
    This code produces the following output:

    First query: orange
    Second query: The collection does not contain exactly one element
*/

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: