Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Enumerable.Single<TSource>-Methode: (IEnumerable<TSource>, Func<TSource, Boolean>)

 

Veröffentlicht: Oktober 2016

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.

Namespace:   System.Linq
Assembly:  System.Core (in System.Core.dll)

public static TSource Single<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, bool> predicate
)

Parameter

source
Type: System.Collections.Generic.IEnumerable<TSource>

Ein IEnumerable<T> ein einzelnes Element zurückgeben.

predicate
Type: System.Func<TSource, Boolean>

Eine Funktion zum Überprüfen eines Elements auf eine Bedingung.

Rückgabewert

Type: TSource

Das einzige Element der Eingabesequenz, das eine Bedingung erfüllt.

Typparameter

TSource

Der Typ der Elemente von source.

Exception Condition
ArgumentNullException

source oder predicate ist null.

InvalidOperationException

Kein Element erfüllt die Bedingung in predicate.

- oder -

Mehr als ein Element erfüllt die Bedingung in predicate.

- oder -

Die Quellsequenz ist leer.

Die Single<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) Methode löst eine Ausnahme aus, wenn die Eingabesequenz kein übereinstimmendes Element enthält. Stattdessen zurückgeben null verwenden, wenn kein übereinstimmendes Element gefunden wird, SingleOrDefault<TSource>.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie Single<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) das einzige Element eines Arrays auswä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
*/

Im folgenden Codebeispiel wird veranschaulicht, dass Single<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) löst eine Ausnahme aus, 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.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: