Enumerable.Single Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt ein einzelnes spezifisches Element einer Sequenz zurück
Überlädt
Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, und löst eine Ausnahme aus, wenn mehrere solche Elemente vorhanden sind. |
Single<TSource>(IEnumerable<TSource>) |
Gibt das einzige Element einer Sequenz zurück und löst eine Ausnahme aus, wenn nicht genau ein Element in der Sequenz vorhanden ist. |
Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)
- Quelle:
- Single.cs
- Quelle:
- Single.cs
- Quelle:
- Single.cs
Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, und löst eine Ausnahme aus, wenn mehrere solche Elemente vorhanden sind.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IEnumerable<TSource>
Ein IEnumerable<T>, aus dem ein einzelnes Element zurückgegeben werden soll
Gibt zurück
Das einzige Element der Eingabesequenz, das eine Bedingung erfüllt.
Ausnahmen
source
oder predicate
ist null
.
Kein Element erfüllt die Bedingung in predicate
.
- oder -
Die Bedingung in predicate
wird von mehreren Elementen erfüllt.
- oder -
Die Quellsequenz ist leer.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie sie verwenden Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) , um das einzige Element eines Arrays auszuwählen, das eine Bedingung erfüllt.
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.
Console.WriteLine($"First query: {result}")
Im folgenden Codebeispiel wird veranschaulicht, dass Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) eine Ausnahme auslöst, wenn die Sequenz nicht genau ein Element enthält, das die Bedingung erfüllt.
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.
Console.WriteLine($"Second query: {result}")
' This code produces the following output:
'
' First query: passionfruit
' Second query: There is not EXACTLY ONE element whose length is > 15.
Hinweise
Die Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) -Methode löst eine Ausnahme aus, wenn die Eingabesequenz kein übereinstimmende Element enthält. Um stattdessen zurückzugeben null
, wenn kein übereinstimmende Element gefunden wird, verwenden Sie SingleOrDefault.
Gilt für:
Single<TSource>(IEnumerable<TSource>)
- Quelle:
- Single.cs
- Quelle:
- Single.cs
- Quelle:
- Single.cs
Gibt das einzige Element einer Sequenz zurück und löst eine Ausnahme aus, wenn nicht genau ein Element in der Sequenz vorhanden ist.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IEnumerable<TSource>
Ein IEnumerable<T>, dessen einziges Element zurückgegeben werden soll
Gibt zurück
Das einzige Element der Eingabesequenz.
Ausnahmen
source
ist null
.
Die Eingabesequenz enthält mehr als ein Element.
- oder -
Die Eingabesequenz ist leer.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie sie verwenden Single<TSource>(IEnumerable<TSource>) , um das einzige Element eines Arrays auszuwählen.
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.
Console.WriteLine($"First query: {result}")
Im folgenden Codebeispiel wird veranschaulicht, dass Single<TSource>(IEnumerable<TSource>) eine Ausnahme auslöst, wenn die Sequenz nicht genau ein Element enthält.
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.
Console.WriteLine($"Second query: {result}")
' This code produces the following output:
'
' First query: orange
' Second query: The collection does not contain exactly one element.
Hinweise
Die Single<TSource>(IEnumerable<TSource>) -Methode löst eine Ausnahme aus, wenn die Eingabesequenz leer ist. Um stattdessen zurückzugeben null
, wenn die Eingabesequenz leer ist, verwenden Sie SingleOrDefault.