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

Интерфейс IEnumerable<T>

 

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

Предоставляет перечислитель, который поддерживает простой перебор элементов в указанной коллекции.

Просмотреть исходный код .NET Framework для этого типа Reference Source.

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

public interface IEnumerable<out T> : IEnumerable

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

outT

Тип объектов для перечисления.

ИмяОписание
System_CAPS_pubmethodGetEnumerator()

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

ИмяОписание
System_CAPS_pubmethodAggregate<TSource>(Func<TSource, TSource, TSource>)

Перегружен. Применяет к последовательности агрегатную функцию.(Определено Enumerable.)

System_CAPS_pubmethodAggregate<TSource, TAccumulate>(TAccumulate, Func<TAccumulate, TSource, TAccumulate>)

Перегружен. Применяет к последовательности агрегатную функцию. Указанное начальное значение используется в качестве исходного значения агрегатной операции.(Определено Enumerable.)

System_CAPS_pubmethodAggregate<TSource, TAccumulate, TResult>(TAccumulate, Func<TAccumulate, TSource, TAccumulate>, Func<TAccumulate, TResult>)

Перегружен. Применяет к последовательности агрегатную функцию. Указанное начальное значение служит исходным значением для агрегатной операции, а указанная функция используется для выбора результирующего значения.(Определено Enumerable.)

System_CAPS_pubmethodAll<TSource>(Func<TSource, Boolean>)

Определяет, удовлетворяют ли условию ВСЕ элементы последовательности . (Определено Enumerable.)

System_CAPS_pubmethodAncestors<T>()

Перегружен. Возвращает коллекцию элементов, содержащую предков каждого узла коллекции-источника. (Определено Extensions.)

System_CAPS_pubmethodAncestors<T>(XName)

Перегружен. Возвращает отфильтрованную коллекцию элементов, содержащую предков каждого узла в исходной коллекции. Только элементы с соответствующим XName включен в коллекцию.(Определено Extensions.)

System_CAPS_pubmethodAny<TSource>()

Перегружен. Определяет, содержит ли последовательность какие-либо элементы.(Определено Enumerable.)

System_CAPS_pubmethodAny<TSource>(Func<TSource, Boolean>)

Перегружен. Определяет, удовлетворяет ли какой-либо элемент последовательности условию. (Определено Enumerable.)

System_CAPS_pubmethodAsEnumerable<TSource>()

Возвращает входные данные, типизированного как IEnumerable<T>.(Определено Enumerable.)

System_CAPS_pubmethodAsParallel<TSource>()

Перегружен. Позволяет осуществлять параллельный запрос.(Определено ParallelEnumerable.)

System_CAPS_pubmethodAsQueryable<TElement>()

Перегружен. Преобразует универсальный IEnumerable<T> к универсальному IQueryable<T>.(Определено Queryable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Decimal>)

Перегружен. Вычисляет среднее для последовательности Decimal значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Double>)

Перегружен. Вычисляет среднее для последовательности Double значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Int32>)

Перегружен. Вычисляет среднее для последовательности Int32 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Int64>)

Перегружен. Вычисляет среднее для последовательности Int64 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Nullable<Decimal>>)

Перегружен. Вычисляет среднее для последовательности nullable Decimal значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Nullable<Double>>)

Перегружен. Вычисляет среднее для последовательности nullable Double значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Nullable<Int32>>)

Перегружен. Вычисляет среднее для последовательности nullable Int32 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Nullable<Int64>>)

Перегружен. Вычисляет среднее для последовательности nullable Int64 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Nullable<Single>>)

Перегружен. Вычисляет среднее для последовательности nullable Single значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodAverage<TSource>(Func<TSource, Single>)

Перегружен. Вычисляет среднее для последовательности Single значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodCast<TResult>()

Приводит элементы IEnumerable для указанного типа.(Определено Enumerable.)

System_CAPS_pubmethodConcat<TSource>(IEnumerable<TSource>)

Объединяет две последовательности.(Определено Enumerable.)

System_CAPS_pubmethodContains<TSource>(TSource)

Перегружен. Определяет, содержит ли последовательность указанный элемент, используя компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodContains<TSource>(TSource, IEqualityComparer<TSource>)

Перегружен. Определяет, содержит ли последовательность указанный элемент, используя указанный IEqualityComparer<T>.(Определено Enumerable.)

System_CAPS_pubmethodCopyToDataTable<T>()

Перегружен. Возвращает DataTable содержащий копии DataRow объектов, входных данных IEnumerable<T> объект где общий параметр T является DataRow.(Определено DataTableExtensions.)

System_CAPS_pubmethodCopyToDataTable<T>(DataTable, LoadOption)

Перегружен. Копирует DataRow объектов для указанного DataTable, входных данных IEnumerable<T> объект где общий параметр T является DataRow.(Определено DataTableExtensions.)

System_CAPS_pubmethodCopyToDataTable<T>(DataTable, LoadOption, FillErrorEventHandler)

Перегружен. Копирует DataRow объектов для указанного DataTable, входных данных IEnumerable<T> объект где общий параметр T является DataRow.(Определено DataTableExtensions.)

System_CAPS_pubmethodCount<TSource>()

Перегружен. Возвращает количество элементов в последовательности.(Определено Enumerable.)

System_CAPS_pubmethodCount<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает число, представляющее количество элементов в указанной последовательности удовлетворяют условию.(Определено Enumerable.)

System_CAPS_pubmethodDefaultIfEmpty<TSource>()

Перегружен. Возвращает элементы указанной последовательности или значение по умолчанию параметра типа одноэлементную коллекцию, если последовательность пуста.(Определено Enumerable.)

System_CAPS_pubmethodDefaultIfEmpty<TSource>(TSource)

Перегружен. Возвращает элементы указанной последовательности или значение заданного одноэлементную коллекцию, если последовательность пуста.(Определено Enumerable.)

System_CAPS_pubmethodDescendantNodes<T>()

Возвращает коллекцию узлов-потомков каждого документа и элемента в исходной коллекции.(Определено Extensions.)

System_CAPS_pubmethodDescendants<T>()

Перегружен. Возвращает коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции.(Определено Extensions.)

System_CAPS_pubmethodDescendants<T>(XName)

Перегружен. Возвращает отфильтрованную коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции. Только элементы с соответствующим XName включен в коллекцию.(Определено Extensions.)

System_CAPS_pubmethodDistinct<TSource>()

Перегружен. Возвращает различающиеся элементы последовательности, используя для сравнения значений компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodDistinct<TSource>(IEqualityComparer<TSource>)

Перегружен. Возвращает различающиеся элементы последовательности, используя указанную IEqualityComparer<T> для сравнения значений.(Определено Enumerable.)

System_CAPS_pubmethodElementAt<TSource>(Int32)

Возвращает элемент по указанному индексу в последовательности.(Определено Enumerable.)

System_CAPS_pubmethodElementAtOrDefault<TSource>(Int32)

Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона.(Определено Enumerable.)

System_CAPS_pubmethodElements<T>()

Перегружен. Возвращает коллекцию дочерних элементов каждого элемента и документа в исходной коллекции.(Определено Extensions.)

System_CAPS_pubmethodElements<T>(XName)

Перегружен. Возвращает фильтрованную коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. Только элементы с соответствующим XName включен в коллекцию.(Определено Extensions.)

System_CAPS_pubmethodExcept<TSource>(IEnumerable<TSource>)

Перегружен. Находит разность двух последовательностей, используя для сравнения значений компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodExcept<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Перегружен. Находит разность двух последовательностей с помощью заданного IEqualityComparer<T> для сравнения значений.(Определено Enumerable.)

System_CAPS_pubmethodFirst<TSource>()

Перегружен. Возвращает первый элемент последовательности.(Определено Enumerable.)

System_CAPS_pubmethodFirst<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает первый элемент последовательности, удовлетворяющий указанному условию.(Определено Enumerable.)

System_CAPS_pubmethodFirstOrDefault<TSource>()

Перегружен. Возвращает первый элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.(Определено Enumerable.)

System_CAPS_pubmethodFirstOrDefault<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает первый элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если ни одного такого элемента не найдено.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey>(Func<TSource, TKey>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey>(Func<TSource, TKey>, IEqualityComparer<TKey>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и сравнивает ключи с помощью указанного компаратора.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и проецирует элементы каждой группы с помощью указанной функции.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>, IEqualityComparer<TKey>)

Перегружен. Группирует элементы последовательности в соответствии с функцией селектора ключа. Ключи сравниваются с помощью компаратора, элементы каждой группы проецируются с помощью указанной функции.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TResult>(Func<TSource, TKey>, Func<TKey, IEnumerable<TSource>, TResult>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TResult>(Func<TSource, TKey>, Func<TKey, IEnumerable<TSource>, TResult>, IEqualityComparer<TKey>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа. Ключи сравниваются с использованием заданного компаратора.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TElement, TResult>(Func<TSource, TKey>, Func<TSource, TElement>, Func<TKey, IEnumerable<TElement>, TResult>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа. Элементы каждой группы проецируются с помощью указанной функции.(Определено Enumerable.)

System_CAPS_pubmethodGroupBy<TSource, TKey, TElement, TResult>(Func<TSource, TKey>, Func<TSource, TElement>, Func<TKey, IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>)

Перегружен. Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа. Значения ключей сравниваются с помощью указанного компаратора, элементы каждой группы проецируются с помощью указанной функции.(Определено Enumerable.)

System_CAPS_pubmethodGroupJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, IEnumerable<TInner>, TResult>)

Перегружен. Устанавливает корреляцию между элементами двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodGroupJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

Перегружен. Устанавливает корреляцию между элементами двух последовательностей на основе равенства ключа и группирует результаты. Указанный IEqualityComparer<T> используется для сравнения ключей.(Определено Enumerable.)

System_CAPS_pubmethodInDocumentOrder<T>()

Возвращает коллекцию узлов, содержащую все узлы в исходной коллекции, отсортированные в порядке следования документов.(Определено Extensions.)

System_CAPS_pubmethodIntersect<TSource>(IEnumerable<TSource>)

Перегружен. Находит пересечение двух последовательностей, используя для сравнения значений компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodIntersect<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Перегружен. Находит пересечение двух последовательностей с помощью заданного IEqualityComparer<T> для сравнения значений.(Определено Enumerable.)

System_CAPS_pubmethodJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, TInner, TResult>)

Перегружен. Устанавливает корреляцию между элементами двух последовательностей на основе сопоставления ключей. Для сравнения ключей используется компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, TInner, TResult>, IEqualityComparer<TKey>)

Перегружен. Устанавливает корреляцию между элементами двух последовательностей на основе сопоставления ключей. Указанный IEqualityComparer<T> используется для сравнения ключей.(Определено Enumerable.)

System_CAPS_pubmethodLast<TSource>()

Перегружен. Возвращает последний элемент последовательности.(Определено Enumerable.)

System_CAPS_pubmethodLast<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает последний элемент последовательности, удовлетворяющий указанному условию.(Определено Enumerable.)

System_CAPS_pubmethodLastOrDefault<TSource>()

Перегружен. Возвращает последний элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.(Определено Enumerable.)

System_CAPS_pubmethodLastOrDefault<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает последний элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если ни одного такого элемента не найдено.(Определено Enumerable.)

System_CAPS_pubmethodLongCount<TSource>()

Перегружен. Возвращает Int64 , представляет собой общее число элементов в последовательности.(Определено Enumerable.)

System_CAPS_pubmethodLongCount<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает Int64 представляющий количество элементов в последовательности удовлетворяют условию.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>()

Перегружен. Возвращает максимальное значение, содержащееся в универсальной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Decimal>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное Decimal значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Double>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное Double значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Int32>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное Int32 значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Int64>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное Int64 значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Nullable<Decimal>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение NULL Decimal значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Nullable<Double>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение NULL Double значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Nullable<Int32>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение NULL Int32 значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Nullable<Int64>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение NULL Int64 значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Nullable<Single>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение NULL Single значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource>(Func<TSource, Single>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное Single значение.(Определено Enumerable.)

System_CAPS_pubmethodMax<TSource, TResult>(Func<TSource, TResult>)

Перегружен. Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает максимальное результирующее значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>()

Перегружен. Возвращает минимальное значение, содержащееся в универсальной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Decimal>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное Decimal значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Double>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное Double значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Int32>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное Int32 значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Int64>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное Int64 значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Nullable<Decimal>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение NULL Decimal значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Nullable<Double>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение NULL Double значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Nullable<Int32>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение NULL Int32 значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Nullable<Int64>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение NULL Int64 значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Nullable<Single>>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение NULL Single значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource>(Func<TSource, Single>)

Перегружен. Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное Single значение.(Определено Enumerable.)

System_CAPS_pubmethodMin<TSource, TResult>(Func<TSource, TResult>)

Перегружен. Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает минимальное результирующее значение.(Определено Enumerable.)

System_CAPS_pubmethodNodes<T>()

Возвращает коллекцию дочерних узлов каждого документа и элемента в исходной коллекции.(Определено Extensions.)

System_CAPS_pubmethodOfType<TResult>()

Фильтрует элементы IEnumerable на основе указанного типа.(Определено Enumerable.)

System_CAPS_pubmethodOrderBy<TSource, TKey>(Func<TSource, TKey>)

Перегружен. Сортирует элементы последовательности в возрастающем порядке по ключу.(Определено Enumerable.)

System_CAPS_pubmethodOrderBy<TSource, TKey>(Func<TSource, TKey>, IComparer<TKey>)

Перегружен. Сортирует элементы последовательности в порядке возрастания с использованием указанного компаратора.(Определено Enumerable.)

System_CAPS_pubmethodOrderByDescending<TSource, TKey>(Func<TSource, TKey>)

Перегружен. Сортирует элементы последовательности в порядке убывания ключа.(Определено Enumerable.)

System_CAPS_pubmethodOrderByDescending<TSource, TKey>(Func<TSource, TKey>, IComparer<TKey>)

Перегружен. Сортирует элементы последовательности в порядке убывания с использованием указанного компаратора.(Определено Enumerable.)

System_CAPS_pubmethodRemove<T>()

Перегружен. Удаление каждого узла в исходной коллекции из родительского узла.(Определено Extensions.)

System_CAPS_pubmethodReverse<TSource>()

Изменяет порядок элементов в последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSelect<TSource, TResult>(Func<TSource, TResult>)

Перегружен. Проецирует каждый элемент последовательности в новую форму.(Определено Enumerable.)

System_CAPS_pubmethodSelect<TSource, TResult>(Func<TSource, Int32, TResult>)

Перегружен. Проецирует каждый элемент последовательности в новую форму, добавляя индекс элемента.(Определено Enumerable.)

System_CAPS_pubmethodSelectMany<TSource, TResult>(Func<TSource, IEnumerable<TResult>>)

Перегружен. Проецирует каждый элемент последовательности в IEnumerable<T> и объединяет результирующие последовательности в одну последовательность.(Определено Enumerable.)

System_CAPS_pubmethodSelectMany<TSource, TResult>(Func<TSource, Int32, IEnumerable<TResult>>)

Перегружен. Проецирует каждый элемент последовательности в IEnumerable<T>, и объединяет результирующие последовательности в одну последовательность. Индекс каждого элемента исходной последовательности используется в проецированной форме этого элемента.(Определено Enumerable.)

System_CAPS_pubmethodSelectMany<TSource, TCollection, TResult>(Func<TSource, IEnumerable<TCollection>>, Func<TSource, TCollection, TResult>)

Перегружен. Проецирует каждый элемент последовательности в IEnumerable<T>, объединяет результирующие последовательности в одну и вызывает функцию селектора результата для каждого элемента этой последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSelectMany<TSource, TCollection, TResult>(Func<TSource, Int32, IEnumerable<TCollection>>, Func<TSource, TCollection, TResult>)

Перегружен. Проецирует каждый элемент последовательности в IEnumerable<T>, объединяет результирующие последовательности в одну и вызывает функцию селектора результата для каждого элемента этой последовательности. Индекс каждого элемента исходной последовательности используется в промежуточной проецированной форме этого элемента.(Определено Enumerable.)

System_CAPS_pubmethodSequenceEqual<TSource>(IEnumerable<TSource>)

Перегружен. Определяет, совпадают ли две последовательности, сравнивая элементы, используя компаратор проверки на равенство по умолчанию для их типа. (Определено Enumerable.)

System_CAPS_pubmethodSequenceEqual<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Перегружен. Определяет, равны ли две последовательности, сравнивая их элементы с помощью указанного IEqualityComparer<T>.(Определено Enumerable.)

System_CAPS_pubmethodSingle<TSource>()

Перегружен. Возвращает единственный элемент последовательности и вызывает исключение, если число элементов последовательности отлично от одного.(Определено Enumerable.)

System_CAPS_pubmethodSingle<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает единственный элемент последовательности, удовлетворяющий указанному условию, и вызывает исключение, если таких элементов больше одного.(Определено Enumerable.)

System_CAPS_pubmethodSingleOrDefault<TSource>()

Перегружен. Возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; Этот метод создает исключение, если в последовательности более одного элемента.(Определено Enumerable.)

System_CAPS_pubmethodSingleOrDefault<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает единственный элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если такого элемента не существует; если условию удовлетворяет более одного элемента, вызывается исключение.(Определено Enumerable.)

System_CAPS_pubmethodSkip<TSource>(Int32)

Пропускает заданное число элементов в последовательности и возвращает остальные элементы.(Определено Enumerable.)

System_CAPS_pubmethodSkipWhile<TSource>(Func<TSource, Boolean>)

Перегружен. Пропускает элементы в последовательности, пока заданное условие истинно и затем возвращает оставшиеся элементы.(Определено Enumerable.)

System_CAPS_pubmethodSkipWhile<TSource>(Func<TSource, Int32, Boolean>)

Перегружен. Пропускает элементы в последовательности, пока заданное условие истинно и затем возвращает оставшиеся элементы. Индекс элемента используется в логике функции предиката.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Decimal>)

Перегружен. Вычисляет сумму последовательности Decimal значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Double>)

Перегружен. Вычисляет сумму последовательности Double значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Int32>)

Перегружен. Вычисляет сумму последовательности Int32 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Int64>)

Перегружен. Вычисляет сумму последовательности Int64 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Nullable<Decimal>>)

Перегружен. Вычисляет сумму последовательности nullable Decimal значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Nullable<Double>>)

Перегружен. Вычисляет сумму последовательности nullable Double значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Nullable<Int32>>)

Перегружен. Вычисляет сумму последовательности nullable Int32 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Nullable<Int64>>)

Перегружен. Вычисляет сумму последовательности nullable Int64 значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Nullable<Single>>)

Перегружен. Вычисляет сумму последовательности nullable Single значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodSum<TSource>(Func<TSource, Single>)

Перегружен. Вычисляет сумму последовательности Single значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.(Определено Enumerable.)

System_CAPS_pubmethodTake<TSource>(Int32)

Возвращает заданное число смежных элементов с начала последовательности.(Определено Enumerable.)

System_CAPS_pubmethodTakeWhile<TSource>(Func<TSource, Boolean>)

Перегружен. Возвращает цепочку элементов последовательности, до тех пор, пока условие истинно. (Определено Enumerable.)

System_CAPS_pubmethodTakeWhile<TSource>(Func<TSource, Int32, Boolean>)

Перегружен. Возвращает цепочку элементов последовательности, до тех пор, пока условие истинно. Индекс элемента используется в логике функции предиката.(Определено Enumerable.)

System_CAPS_pubmethodToArray<TSource>()

Создает массив из IEnumerable<T>.(Определено Enumerable.)

System_CAPS_pubmethodToDictionary<TSource, TKey>(Func<TSource, TKey>)

Перегружен. Создает Dictionary<TKey, TValue> из IEnumerable<T> в соответствии с заданной функцией селектора ключа.(Определено Enumerable.)

System_CAPS_pubmethodToDictionary<TSource, TKey>(Func<TSource, TKey>, IEqualityComparer<TKey>)

Перегружен. Создает Dictionary<TKey, TValue> из IEnumerable<T> в соответствии с указанной функцией выбора ключа функции и компаратором ключей.(Определено Enumerable.)

System_CAPS_pubmethodToDictionary<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>)

Перегружен. Создает Dictionary<TKey, TValue> из IEnumerable<T> в соответствии с указанной функцией выбора ключа и функции селектора элемента.(Определено Enumerable.)

System_CAPS_pubmethodToDictionary<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>, IEqualityComparer<TKey>)

Перегружен. Создает Dictionary<TKey, TValue> из IEnumerable<T> в соответствии с заданной функцией селектора ключа, средства сравнения и функции выбора элементов.(Определено Enumerable.)

System_CAPS_pubmethodToList<TSource>()

Создает List<T> из IEnumerable<T>.(Определено Enumerable.)

System_CAPS_pubmethodToLookup<TSource, TKey>(Func<TSource, TKey>)

Перегружен. Создает Lookup<TKey, TElement> из IEnumerable<T> в соответствии с заданной функцией селектора ключа.(Определено Enumerable.)

System_CAPS_pubmethodToLookup<TSource, TKey>(Func<TSource, TKey>, IEqualityComparer<TKey>)

Перегружен. Создает Lookup<TKey, TElement> из IEnumerable<T> в соответствии с указанной функцией выбора ключа функции и компаратором ключей.(Определено Enumerable.)

System_CAPS_pubmethodToLookup<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>)

Перегружен. Создает Lookup<TKey, TElement> из IEnumerable<T> в соответствии с указанной функцией выбора ключа и функции селектора элемента.(Определено Enumerable.)

System_CAPS_pubmethodToLookup<TSource, TKey, TElement>(Func<TSource, TKey>, Func<TSource, TElement>, IEqualityComparer<TKey>)

Перегружен. Создает Lookup<TKey, TElement> из IEnumerable<T> в соответствии с заданной функцией селектора ключа и компаратором функции выбора элементов.(Определено Enumerable.)

System_CAPS_pubmethodUnion<TSource>(IEnumerable<TSource>)

Перегружен. Находит объединения наборов двух последовательностей, используя компаратор проверки на равенство по умолчанию.(Определено Enumerable.)

System_CAPS_pubmethodUnion<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Перегружен. Создает объединения наборов двух последовательностей с использованием указанного IEqualityComparer<T>.(Определено Enumerable.)

System_CAPS_pubmethodWhere<TSource>(Func<TSource, Boolean>)

Перегружен. Выполняет фильтрацию последовательности значений на основе заданного предиката.(Определено Enumerable.)

System_CAPS_pubmethodWhere<TSource>(Func<TSource, Int32, Boolean>)

Перегружен. Выполняет фильтрацию последовательности значений на основе заданного предиката. Индекс каждого элемента используется в логике функции предиката.(Определено Enumerable.)

System_CAPS_pubmethodZip<TFirst, TSecond, TResult>(IEnumerable<TSecond>, Func<TFirst, TSecond, TResult>)

Применяет указанную функцию к соответствующим элементам двух последовательностей, возвращает полученную последовательность. (Определено Enumerable.)

System_CAPS_noteПримечание

Чтобы просмотреть исходный код .NET Framework для этого типа, см. раздел Reference Source. Просмотр исходного кода в Интернете, загружаемом справочнике для автономного просмотра и пошагово источники (включая исправления и обновления) во время отладки; see instructions.

IEnumerable<T> Представляет базовый интерфейс для коллекций в System.Collections.Generic пространства имен, такие как List<T>, Dictionary<TKey, TValue>, и Stack<T> и других универсальных коллекций, такие как ObservableCollection<T> и ConcurrentStack<T>. Коллекций, реализующих IEnumerable<T> могут быть перечислены с помощью foreach инструкции. Неуниверсальная версия этого интерфейса, в разделе System.Collections.IEnumerable.

Неуниверсальная версия этого интерфейса, в разделе System.Collections.IEnumerable.

IEnumerable<T> содержит единственный метод, который необходимо реализовывать при реализации этого интерфейса: GetEnumerator, который возвращает объект IEnumerator<T>. Возвращаемый IEnumerator<T> позволяет выполнять итерации по коллекции, предоставляя Current свойство.

Заметки о реализации:

IEnumerable<T> включен для соответствия с неуниверсальных коллекций; Реализация IEnumerable<T> позволяет универсальной коллекции будет передан в метод, который ожидает IEnumerable объекта.

В следующем примере демонстрируются реализация интерфейса IEnumerable<T> и её использование для создания запроса LINQ. При реализации IEnumerable<T> необходимо также реализовать IEnumerator<T>. Либо (только в C#) можно использовать ключевое слово yield (справочник по C#). Реализация IEnumerator<T> также требует IDisposable для реализации, который можно будет увидеть в этом примере.

using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

public class App
{
    // Excercise the Iterator and show that it's more
    // performant.
    public static void Main()
    {
        TestStreamReaderEnumerable();
        Console.WriteLine("---");
        TestReadingFile();
    }

    public static void TestStreamReaderEnumerable()
	{
		// Check the memory before the iterator is used.
		long memoryBefore = GC.GetTotalMemory(true);
      IEnumerable<String> stringsFound;
		// Open a file with the StreamReaderEnumerable and check for a string.
      try {
         stringsFound =
               from line in new StreamReaderEnumerable(@"c:\temp\tempFile.txt")
               where line.Contains("string to search for")
               select line;
         Console.WriteLine("Found: " + stringsFound.Count());
      }
      catch (FileNotFoundException) {
         Console.WriteLine(@"This example requires a file named C:\temp\tempFile.txt.");
         return;
      }

		// Check the memory after the iterator and output it to the console.
		long memoryAfter = GC.GetTotalMemory(false);
		Console.WriteLine("Memory Used With Iterator = \t"
            + string.Format(((memoryAfter - memoryBefore) / 1000).ToString(), "n") + "kb");
	}

    public static void TestReadingFile()
	{
		long memoryBefore = GC.GetTotalMemory(true);
      StreamReader sr;
      try {
         sr = File.OpenText("c:\\temp\\tempFile.txt");
      }
      catch (FileNotFoundException) {
         Console.WriteLine(@"This example requires a file named C:\temp\tempFile.txt.");
         return;
      }

        // Add the file contents to a generic list of strings.
		List<string> fileContents = new List<string>();
		while (!sr.EndOfStream) {
			fileContents.Add(sr.ReadLine());
		}

		// Check for the string.
		var stringsFound = 
            from line in fileContents
            where line.Contains("string to search for")
            select line;

        sr.Close();
        Console.WriteLine("Found: " + stringsFound.Count());

		// Check the memory after when the iterator is not used, and output it to the console.
		long memoryAfter = GC.GetTotalMemory(false);
		Console.WriteLine("Memory Used Without Iterator = \t" + 
            string.Format(((memoryAfter - memoryBefore) / 1000).ToString(), "n") + "kb");
	}
}

// A custom class that implements IEnumerable(T). When you implement IEnumerable(T), 
// you must also implement IEnumerable and IEnumerator(T).
public class StreamReaderEnumerable : IEnumerable<string>
{
    private string _filePath;
    public StreamReaderEnumerable(string filePath)
    {
        _filePath = filePath;
    }

    // Must implement GetEnumerator, which returns a new StreamReaderEnumerator.
    public IEnumerator<string> GetEnumerator()
    {
        return new StreamReaderEnumerator(_filePath);
    }

    // Must also implement IEnumerable.GetEnumerator, but implement as a private method.
    private IEnumerator GetEnumerator1()
    {
        return this.GetEnumerator();
    }
    IEnumerator IEnumerable.GetEnumerator()
    {
        return GetEnumerator1();
    }
}

// When you implement IEnumerable(T), you must also implement IEnumerator(T), 
// which will walk through the contents of the file one line at a time.
// Implementing IEnumerator(T) requires that you implement IEnumerator and IDisposable.
public class StreamReaderEnumerator : IEnumerator<string>
{
    private StreamReader _sr;
    public StreamReaderEnumerator(string filePath)
    {
        _sr = new StreamReader(filePath);
    }

    private string _current;
    // Implement the IEnumerator(T).Current publicly, but implement 
    // IEnumerator.Current, which is also required, privately.
    public string Current
    {

        get
        {
            if (_sr == null || _current == null)
            {
                throw new InvalidOperationException();
            }

            return _current;
        }
    }

    private object Current1
    {

        get { return this.Current; }
    }

    object IEnumerator.Current
    {
        get { return Current1; }
    }

    // Implement MoveNext and Reset, which are required by IEnumerator.
    public bool MoveNext()
    {
        _current = _sr.ReadLine();
        if (_current == null)
            return false;
        return true;
    }

    public void Reset()
    {
        _sr.DiscardBufferedData();
        _sr.BaseStream.Seek(0, SeekOrigin.Begin);
        _current = null;
    }

    // Implement IDisposable, which is also implemented by IEnumerator(T).
    private bool disposedValue = false;
    public void Dispose()
    {
        Dispose(true);
        GC.SuppressFinalize(this);
    }

    protected virtual void Dispose(bool disposing)
    {
        if (!this.disposedValue)
        {
            if (disposing)
            {
                // Dispose of managed resources.
            }
            _current = null;
            if (_sr != null) {
               _sr.Close();
               _sr.Dispose();
            }
        }

        this.disposedValue = true;
    }

     ~StreamReaderEnumerator()
    {
        Dispose(false);
    }
}
// This example displays output similar to the following:
//       Found: 2
//       Memory Used With Iterator =     33kb
//       ---
//       Found: 2
//       Memory Used Without Iterator =  206kb

For another C# example that demonstrates how to implement the T:System.Collections.Generic.IEnumerable`1 interface, see the Generics Samplehttp://code.msdn.microsoft.com/Generics-Sample-C-9b41a192/sourcecode?fileId=46476&pathId=1364935593. This sample uses the yield keyword instead of implementing T:System.Collections.Generic.IEnumerator`1.

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