Enumerable.Single Enumerable.Single Enumerable.Single Enumerable.Single Method

Definizione

Restituisce un singolo, specifico elemento di una sequenza.Returns a single, specific element of a sequence.

Overload

Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Restituisce l'unico elemento di una sequenza che soddisfa una condizione specificata e genera un'eccezione se esistono più elementi di tale tipo.Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists.

Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>)

Restituisce l'unico elemento di una sequenza e genera un'eccezione se nella sequenza non è presente esattamente un elemento.Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence.

Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Restituisce l'unico elemento di una sequenza che soddisfa una condizione specificata e genera un'eccezione se esistono più elementi di tale tipo.Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Single(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, bool> ^ predicate);
public static TSource Single<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);
static member Single : seq<'Source> * Func<'Source, bool> -> 'Source
<Extension()>
Public Function Single(Of TSource) (source As IEnumerable(Of TSource), predicate As Func(Of TSource, Boolean)) As TSource

Parametri di tipo

TSource

Tipo degli elementi di source.The type of the elements of source.

Parametri

source
IEnumerable<TSource>

Un oggetto IEnumerable<T> dal quale restituire un singolo elemento.An IEnumerable<T> to return a single element from.

predicate
Func<TSource,Boolean>

Funzione per testare un elemento per una condizione.A function to test an element for a condition.

Restituisce

TSource TSource TSource TSource

Singolo elemento della sequenza di input che soddisfa una condizione.The single element of the input sequence that satisfies a condition.

Eccezioni

source o predicate è null.source or predicate is null.

Nessun elemento soddisfa la condizione in predicate.No element satisfies the condition in predicate.

In alternativa-or- Più di un elemento soddisfa la condizione in predicate.More than one element satisfies the condition in predicate.

In alternativa-or- La sequenza di origine è vuota.The source sequence is empty.

Esempi

Esempio di codice seguente viene illustrato come utilizzare Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) per selezionare l'unico elemento di una matrice che soddisfa una condizione.The following code example demonstrates how to use Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) to select the only element of an array that satisfies a condition.

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

string fruit1 = fruits.Single(fruit => fruit.Length > 10);

Console.WriteLine(fruit1);

/*
 This code produces the following output:

 passionfruit
*/
' Create an array of strings.
Dim fruits() As String =
{"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Get the single item in the array whose length is greater than 10.
Dim result As String =
fruits.Single(Function(fruit) fruit.Length > 10)

' Display the result.
MsgBox("First query: " & result)

Esempio di codice seguente viene dimostrato che Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) genera un'eccezione quando la sequenza non contiene esattamente un elemento che soddisfa la condizione.The following code example demonstrates that Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) throws an exception when the sequence does not contain exactly one element that satisfies the condition.

string fruit2 = null;

try
{
    fruit2 = fruits.Single(fruit => fruit.Length > 15);
}
catch (System.InvalidOperationException)
{
    Console.WriteLine(@"The collection does not contain exactly 
                    one element whose length is greater than 15.");
}

Console.WriteLine(fruit2);

// This code produces the following output:
//
// The collection does not contain exactly  
// one element whose length is greater than 15.
result = String.Empty

' Try to get the single item in the array whose length is > 15.
Try
    result = fruits.Single(Function(fruit) _
                           fruit.Length > 15)
Catch ex As System.InvalidOperationException
    result = "There is not EXACTLY ONE element whose length is > 15."
End Try

' Display the result.
MsgBox("Second query: " & result)

' This code produces the following output:
'
' First query: passionfruit
' Second query: There is not EXACTLY ONE element whose length is > 15.

Commenti

Il Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) metodo genera un'eccezione se la sequenza di input non contiene alcun elemento corrispondente.The Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) method throws an exception if the input sequence contains no matching element. Per effettuare la restituzione null quando non viene trovato alcun elemento corrispondente, utilizzare SingleOrDefault.To instead return null when no matching element is found, use SingleOrDefault.

Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>) Single<TSource>(IEnumerable<TSource>)

Restituisce l'unico elemento di una sequenza e genera un'eccezione se nella sequenza non è presente esattamente un elemento.Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Single(System::Collections::Generic::IEnumerable<TSource> ^ source);
public static TSource Single<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
static member Single : seq<'Source> -> 'Source
<Extension()>
Public Function Single(Of TSource) (source As IEnumerable(Of TSource)) As TSource

Parametri di tipo

TSource

Tipo degli elementi di source.The type of the elements of source.

Parametri

source
IEnumerable<TSource>

Oggetto IEnumerable<T> di cui restituire il singolo elemento.An IEnumerable<T> to return the single element of.

Restituisce

TSource TSource TSource TSource

Singolo elemento della sequenza di input.The single element of the input sequence.

Eccezioni

La sequenza di input contiene più elementi.The input sequence contains more than one element.

In alternativa-or-

La sequenza di input è vuota.The input sequence is empty.

Esempi

Esempio di codice seguente viene illustrato come utilizzare Single<TSource>(IEnumerable<TSource>) per selezionare l'unico elemento di matrice.The following code example demonstrates how to use Single<TSource>(IEnumerable<TSource>) to select the only element of an array.

string[] fruits1 = { "orange" };

string fruit1 = fruits1.Single();

Console.WriteLine(fruit1);

/*
 This code produces the following output:

 orange
*/
' Create an array that contains one item.
Dim fruits1() As String = {"orange"}

' Get the single item in the array.
Dim result As String = fruits1.Single()

' Display the result.
MsgBox("First query: " & result)

Esempio di codice seguente viene dimostrato che Single<TSource>(IEnumerable<TSource>) genera un'eccezione quando la sequenza non contiene esattamente un elemento.The following code example demonstrates that Single<TSource>(IEnumerable<TSource>) throws an exception when the sequence does not contain exactly one element.

string[] fruits2 = { "orange", "apple" };
string fruit2 = null;

try
{
    fruit2 = fruits2.Single();
}
catch (System.InvalidOperationException)
{
    Console.WriteLine("The collection does not contain exactly one element.");
}

Console.WriteLine(fruit2);

/*
 This code produces the following output:

 The collection does not contain exactly one element.
*/
' Create an array that contains two items.
Dim fruits2() As String = {"orange", "apple"}

result = String.Empty

' Try to get the 'single' item in the array.
Try
    result = fruits2.Single()
Catch ex As System.InvalidOperationException
    result = "The collection does not contain exactly one element."
End Try

' Display the result.
MsgBox("Second query: " & result)

' This code produces the following output:
'
' First query: orange
' Second query: The collection does not contain exactly one element.

Commenti

Il Single<TSource>(IEnumerable<TSource>) metodo genera un'eccezione se la sequenza di input è vuota.The Single<TSource>(IEnumerable<TSource>) method throws an exception if the input sequence is empty. Per effettuare la restituzione null quando la sequenza di input è vuota, usare SingleOrDefault.To instead return null when the input sequence is empty, use SingleOrDefault.

Si applica a