Enumerable.Single Yöntem

Tanım

Bir dizinin tek, belirli bir öğesini döndürür.

Aşırı Yüklemeler

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

Bir dizide belirtilen koşulu karşılayan tek öğeyi döndürür ve birden fazla öğe varsa özel durum oluşturur.

Single<TSource>(IEnumerable<TSource>)

Bir dizinin tek öğesini döndürür ve dizide tam olarak bir öğe yoksa bir özel durum oluşturur.

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

Kaynak:
Single.cs
Kaynak:
Single.cs
Kaynak:
Single.cs

Bir dizide belirtilen koşulu karşılayan tek öğeyi döndürür ve birden fazla öğe varsa özel durum oluşturur.

C#
public static TSource Single<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);

Tür Parametreleri

TSource

öğelerinin sourcetürü.

Parametreler

source
IEnumerable<TSource>

Öğesinden IEnumerable<T> tek bir öğe döndürmek için.

predicate
Func<TSource,Boolean>

Bir koşul için bir öğeyi test etmek için bir işlev.

Döndürülenler

TSource

Bir koşulu karşılayan giriş dizisinin tek öğesi.

Özel durumlar

source veya predicate şeklindedir null.

hiçbir öğe içindeki predicatekoşulu karşılar.

-veya-

birden fazla öğe içindeki predicatekoşulu karşılar.

-veya-

Kaynak dizisi boş.

Örnekler

Aşağıdaki kod örneği, bir dizideki koşulu karşılayan tek öğeyi seçmek için nasıl kullanılacağını Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) gösterir.

C#
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
*/

Aşağıdaki kod örneği, dizi koşulu karşılayan tam olarak bir öğe içermediğinde bir özel durum oluşturduğunu gösterir Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) .

C#
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.

Açıklamalar

Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) Giriş dizisi eşleşen öğe içermiyorsa yöntemi bir özel durum oluşturur. Bunun yerine eşleşen öğe bulunamadığında döndürmek null için kullanın SingleOrDefault.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Single<TSource>(IEnumerable<TSource>)

Kaynak:
Single.cs
Kaynak:
Single.cs
Kaynak:
Single.cs

Bir dizinin tek öğesini döndürür ve dizide tam olarak bir öğe yoksa bir özel durum oluşturur.

C#
public static TSource Single<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);

Tür Parametreleri

TSource

öğelerinin sourcetürü.

Parametreler

source
IEnumerable<TSource>

öğesinin IEnumerable<T> tek öğesini döndürmek için.

Döndürülenler

TSource

Giriş dizisinin tek öğesi.

Özel durumlar

source, null değeridir.

Giriş dizisi birden fazla öğe içeriyor.

-veya-

Giriş dizisi boş.

Örnekler

Aşağıdaki kod örneği, bir dizinin tek öğesini seçmek için nasıl kullanılacağını Single<TSource>(IEnumerable<TSource>) gösterir.

C#
string[] fruits1 = { "orange" };

string fruit1 = fruits1.Single();

Console.WriteLine(fruit1);

/*
 This code produces the following output:

 orange
*/

Aşağıdaki kod örneği, dizide tam olarak bir öğe olmadığında özel durum oluşturan bir örneği gösterir Single<TSource>(IEnumerable<TSource>) .

C#
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.
*/

Açıklamalar

Single<TSource>(IEnumerable<TSource>) Giriş dizisi boşsa yöntemi bir özel durum oluşturur. Bunun yerine giriş dizisi boş olduğunda döndürmek null için kullanın SingleOrDefault.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0