Enumerable.TryGetNonEnumeratedCount<TSource> Метод

Определение

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

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static bool TryGetNonEnumeratedCount(System::Collections::Generic::IEnumerable<TSource> ^ source, [Runtime::InteropServices::Out] int % count);
public static bool TryGetNonEnumeratedCount<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, out int count);
static member TryGetNonEnumeratedCount : seq<'Source> * int -> bool
<Extension()>
Public Function TryGetNonEnumeratedCount(Of TSource) (source As IEnumerable(Of TSource), ByRef count As Integer) As Boolean

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

TSource

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

Параметры

source
IEnumerable<TSource>

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

count
Int32

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

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

Boolean

true if the count of source can be determined without enumeration; otherwise, false.

Комментарии

Метод выполняет ряд тестов типов, идентифицируя общие подтипы, количество которых можно определить без перечисления. Сюда входят ICollection<T>и ICollectionвнутренние типы, используемые в реализации LINQ.

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

Применяется к