Данная статья переведена с помощью средств машинного перевода. Чтобы просмотреть ее на английском языке, установите флажок Английский. Вы также можете просматривать английский текст во всплывающем окне, наводя указатель мыши на переведенный текст.
Перевод
Английский

Метод Enumerable.Single<TSource>(IEnumerable<TSource>)

 

Опубликовано: Октябрь 2016

Возвращает единственный элемент последовательности и вызывает исключение, если число элементов последовательности отлично от одного.

Пространство имен:   System.Linq
Сборка:  System.Core (в System.Core.dll)

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

Параметры

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

IEnumerable<T> Чтобы вернуть единственный элемент.

Возвращаемое значение

Type: TSource

Единственный элемент входной последовательности.

Параметры типа

TSource

Тип элементов source.

Exception Condition
ArgumentNullException

Свойство source имеет значение null.

InvalidOperationException

Входная последовательность содержит более одного элемента.

-или-

Входная последовательность пуста.

Single<TSource>(IEnumerable<TSource>) Метод вызывает исключение, если входная последовательность пуста. Чтобы вместо возврата null Если входная последовательность пуста, используйте SingleOrDefault<TSource>.

В следующем примере кода демонстрируется использование Single<TSource>(IEnumerable<TSource>) единственный элемент массива.

string[] fruits1 = { "orange" };

string fruit1 = fruits1.Single();

Console.WriteLine(fruit1);

/*
 This code produces the following output:

 orange
*/

В следующем примере кода показано, что Single<TSource>(IEnumerable<TSource>) создает исключение, если последовательность не содержит ровно один элемент.

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

Универсальная платформа Windows
Доступно с 8
.NET Framework
Доступно с 3.5
Переносимая библиотека классов
Поддерживается в: переносимые платформы .NET
Silverlight
Доступно с 2.0
Windows Phone Silverlight
Доступно с 7.0
Windows Phone
Доступно с 8.1
Вернуться в начало
Показ: