BlockingCollection<T> Třída

Definice

Poskytuje možnosti blokování a ohraničování pro kolekce bezpečné pro vlákna, které implementují IProducerConsumerCollection<T>.

generic <typename T>
public ref class BlockingCollection : IDisposable, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::ICollection
generic <typename T>
public ref class BlockingCollection : IDisposable, System::Collections::Generic::IEnumerable<T>, System::Collections::ICollection
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
[System.Runtime.InteropServices.ComVisible(false)]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.ICollection
[System.Runtime.InteropServices.ComVisible(false)]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.ICollection
type BlockingCollection<'T> = class
    interface seq<'T>
    interface IEnumerable
    interface IReadOnlyCollection<'T>
    interface ICollection
    interface IDisposable
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type BlockingCollection<'T> = class
    interface seq<'T>
    interface IEnumerable
    interface IReadOnlyCollection<'T>
    interface ICollection
    interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type BlockingCollection<'T> = class
    interface seq<'T>
    interface ICollection
    interface IEnumerable
    interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type BlockingCollection<'T> = class
    interface seq<'T>
    interface IEnumerable
    interface ICollection
    interface IDisposable
    interface IReadOnlyCollection<'T>
type BlockingCollection<'T> = class
    interface seq<'T>
    interface ICollection
    interface IEnumerable
    interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type BlockingCollection<'T> = class
    interface seq<'T>
    interface ICollection
    interface IDisposable
    interface IReadOnlyCollection<'T>
    interface IEnumerable
Public Class BlockingCollection(Of T)
Implements ICollection, IDisposable, IEnumerable(Of T), IReadOnlyCollection(Of T)
Public Class BlockingCollection(Of T)
Implements ICollection, IDisposable, IEnumerable(Of T)

Parametry typu

T

Typ prvků v kolekci.

Dědičnost
BlockingCollection<T>
Atributy
Implementuje

Příklady

Následující příklad ukazuje, jak přidat a převzít položky souběžně z blokující kolekce:

using System;
using System.Collections.Concurrent;
using System.Threading;
using System.Threading.Tasks;

class BlockingCollectionDemo
{
    static async Task Main()
    {
        await AddTakeDemo.BC_AddTakeCompleteAdding();
        TryTakeDemo.BC_TryTake();
        FromToAnyDemo.BC_FromToAny();
        await ConsumingEnumerableDemo.BC_GetConsumingEnumerable();
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }
}
class AddTakeDemo
{
    // Demonstrates:
    //      BlockingCollection<T>.Add()
    //      BlockingCollection<T>.Take()
    //      BlockingCollection<T>.CompleteAdding()
    public static async Task BC_AddTakeCompleteAdding()
    {
        using (BlockingCollection<int> bc = new BlockingCollection<int>())
        {
            // Spin up a Task to populate the BlockingCollection
            Task t1 = Task.Run(() =>
            {
                bc.Add(1);
                bc.Add(2);
                bc.Add(3);
                bc.CompleteAdding();
            });

            // Spin up a Task to consume the BlockingCollection
            Task t2 = Task.Run(() =>
            {
                try
                {
                    // Consume consume the BlockingCollection
                    while (true) Console.WriteLine(bc.Take());
                }
                catch (InvalidOperationException)
                {
                    // An InvalidOperationException means that Take() was called on a completed collection
                    Console.WriteLine("That's All!");
                }
            });

            await Task.WhenAll(t1, t2);
        }
    }
}

class TryTakeDemo
{
    // Demonstrates:
    //      BlockingCollection<T>.Add()
    //      BlockingCollection<T>.CompleteAdding()
    //      BlockingCollection<T>.TryTake()
    //      BlockingCollection<T>.IsCompleted
    public static void BC_TryTake()
    {
        // Construct and fill our BlockingCollection
        using (BlockingCollection<int> bc = new BlockingCollection<int>())
        {
            int NUMITEMS = 10000;
            for (int i = 0; i < NUMITEMS; i++) bc.Add(i);
            bc.CompleteAdding();
            int outerSum = 0;

            // Delegate for consuming the BlockingCollection and adding up all items
            Action action = () =>
            {
                int localItem;
                int localSum = 0;

                while (bc.TryTake(out localItem)) localSum += localItem;
                Interlocked.Add(ref outerSum, localSum);
            };

            // Launch three parallel actions to consume the BlockingCollection
            Parallel.Invoke(action, action, action);

            Console.WriteLine("Sum[0..{0}) = {1}, should be {2}", NUMITEMS, outerSum, ((NUMITEMS * (NUMITEMS - 1)) / 2));
            Console.WriteLine("bc.IsCompleted = {0} (should be true)", bc.IsCompleted);
        }
    }
}

class FromToAnyDemo
{
    // Demonstrates:
    //      Bounded BlockingCollection<T>
    //      BlockingCollection<T>.TryAddToAny()
    //      BlockingCollection<T>.TryTakeFromAny()
    public static void BC_FromToAny()
    {
        BlockingCollection<int>[] bcs = new BlockingCollection<int>[2];
        bcs[0] = new BlockingCollection<int>(5); // collection bounded to 5 items
        bcs[1] = new BlockingCollection<int>(5); // collection bounded to 5 items

        // Should be able to add 10 items w/o blocking
        int numFailures = 0;
        for (int i = 0; i < 10; i++)
        {
            if (BlockingCollection<int>.TryAddToAny(bcs, i) == -1) numFailures++;
        }
        Console.WriteLine("TryAddToAny: {0} failures (should be 0)", numFailures);

        // Should be able to retrieve 10 items
        int numItems = 0;
        int item;
        while (BlockingCollection<int>.TryTakeFromAny(bcs, out item) != -1) numItems++;
        Console.WriteLine("TryTakeFromAny: retrieved {0} items (should be 10)", numItems);
    }
}

class ConsumingEnumerableDemo
{
    // Demonstrates:
    //      BlockingCollection<T>.Add()
    //      BlockingCollection<T>.CompleteAdding()
    //      BlockingCollection<T>.GetConsumingEnumerable()
    public static async Task BC_GetConsumingEnumerable()
    {
        using (BlockingCollection<int> bc = new BlockingCollection<int>())
        {
            // Kick off a producer task
            var producerTask = Task.Run(async () =>
            {
                for (int i = 0; i < 10; i++)
                {
                    bc.Add(i);
                    Console.WriteLine($"Producing: {i}");

                    await Task.Delay(100); // sleep 100 ms between adds
                }

                // Need to do this to keep foreach below from hanging
                bc.CompleteAdding();
            });

            // Now consume the blocking collection with foreach.
            // Use bc.GetConsumingEnumerable() instead of just bc because the
            // former will block waiting for completion and the latter will
            // simply take a snapshot of the current state of the underlying collection.
            foreach (var item in bc.GetConsumingEnumerable())
            {
                Console.WriteLine($"Consuming: {item}");
            }
            await producerTask; // Allow task to complete cleanup
        }
    }
}
Imports System.Threading.Tasks
Imports System.Collections.Concurrent
Imports System.Threading

Class BlockingCollectionDemo
    Shared Sub Main()
        AddTakeDemo.BC_AddTakeCompleteAdding()
        TryTakeDemo.BC_TryTake()
        ToAnyDemo.BC_ToAny()
        ConsumingEnumerableDemo.BC_GetConsumingEnumerable()
        ' Keep the console window open in debug mode
        Console.WriteLine("Press any key to exit.")
        Console.ReadKey()
    End Sub
End Class

Class AddTakeDemo

    ' Demonstrates:
    ' BlockingCollection<T>.Add()
    ' BlockingCollection<T>.Take()
    ' BlockingCollection<T>.CompleteAdding()
    Shared Sub BC_AddTakeCompleteAdding()
        Using bc As New BlockingCollection(Of Integer)()

            ' Spin up a Task to populate the BlockingCollection 
            Using t1 As Task = Task.Factory.StartNew(
                Sub()
                    bc.Add(1)
                    bc.Add(2)
                    bc.Add(3)
                    bc.CompleteAdding()
                End Sub)
                ' Spin up a Task to consume the BlockingCollection
                Using t2 As Task = Task.Factory.StartNew(
                Sub()
                    Try
                        ' Consume the BlockingCollection
                        While True
                            Console.WriteLine(bc.Take())
                        End While
                    Catch generatedExceptionName As InvalidOperationException
                        ' An InvalidOperationException means that Take() was called on a completed collection
                        Console.WriteLine("That's All!")
                    End Try
                End Sub)

                    Task.WaitAll(t1, t2)
                End Using
            End Using
        End Using
    End Sub



End Class

'Imports System.Collections.Concurrent
'Imports System.Threading
'Imports System.Threading.Tasks

Class TryTakeDemo
    ' Demonstrates:
    ' BlockingCollection<T>.Add()
    ' BlockingCollection<T>.CompleteAdding()
    ' BlockingCollection<T>.TryTake()
    ' BlockingCollection<T>.IsCompleted
    Shared Sub BC_TryTake()
        ' Construct and fill our BlockingCollection
        Using bc As New BlockingCollection(Of Integer)()
            Dim NUMITEMS As Integer = 10000
            For i As Integer = 0 To NUMITEMS - 1
                bc.Add(i)
            Next
            bc.CompleteAdding()
            Dim outerSum As Integer = 0

            ' Delegate for consuming the BlockingCollection and adding up all items
            Dim action As Action =
                Sub()
                    Dim localItem As Integer
                    Dim localSum As Integer = 0

                    While bc.TryTake(localItem)
                        localSum += localItem
                    End While
                    Interlocked.Add(outerSum, localSum)
                End Sub

            ' Launch three parallel actions to consume the BlockingCollection
            Parallel.Invoke(action, action, action)

            Console.WriteLine("Sum[0..{0}) = {1}, should be {2}", NUMITEMS, outerSum, ((NUMITEMS * (NUMITEMS - 1)) / 2))
            Console.WriteLine("bc.IsCompleted = {0} (should be true)", bc.IsCompleted)
        End Using
    End Sub

End Class

'Imports System.Threading.Tasks
'Imports System.Collections.Concurrent

' Demonstrates:
' Bounded BlockingCollection<T>
' BlockingCollection<T>.TryAddToAny()
' BlockingCollection<T>.TryTakeFromAny()
Class ToAnyDemo
    Shared Sub BC_ToAny()
        Dim bcs As BlockingCollection(Of Integer)() = New BlockingCollection(Of Integer)(1) {}
        bcs(0) = New BlockingCollection(Of Integer)(5)
        ' collection bounded to 5 items
        bcs(1) = New BlockingCollection(Of Integer)(5)
        ' collection bounded to 5 items
        ' Should be able to add 10 items w/o blocking
        Dim numFailures As Integer = 0
        For i As Integer = 0 To 9
            If BlockingCollection(Of Integer).TryAddToAny(bcs, i) = -1 Then
                numFailures += 1
            End If
        Next
        Console.WriteLine("TryAddToAny: {0} failures (should be 0)", numFailures)

        ' Should be able to retrieve 10 items
        Dim numItems As Integer = 0
        Dim item As Integer
        While BlockingCollection(Of Integer).TryTakeFromAny(bcs, item) <> -1
            numItems += 1
        End While
        Console.WriteLine("TryTakeFromAny: retrieved {0} items (should be 10)", numItems)
    End Sub
End Class

'Imports System.Threading.Tasks
'Imports System.Collections.Concurrent

' Demonstrates:
' BlockingCollection<T>.Add()
' BlockingCollection<T>.CompleteAdding()
' BlockingCollection<T>.GetConsumingEnumerable()

Class ConsumingEnumerableDemo
    Shared Sub BC_GetConsumingEnumerable()
        Using bc As New BlockingCollection(Of Integer)()

            ' Kick off a producer task
            Task.Factory.StartNew(
                Sub()
                    For i As Integer = 0 To 9
                        bc.Add(i)
                        ' sleep 100 ms between adds
                        Thread.Sleep(100)
                    Next

                    ' Need to do this to keep foreach below from not responding.
                    bc.CompleteAdding()
                End Sub)
            ' Now consume the blocking collection with foreach.
            ' Use bc.GetConsumingEnumerable() instead of just bc because the
            ' former will block waiting for completion and the latter will
            ' simply take a snapshot of the current state of the underlying collection.
            For Each item In bc.GetConsumingEnumerable()
                Console.WriteLine(item)
            Next
        End Using
    End Sub
End Class

Poznámky

BlockingCollection<T> je třída kolekce bezpečná pro vlákna, která poskytuje následující:

Důležité

Tento typ implementuje IDisposable rozhraní. Po použití tohoto typu byste ho měli odstranit buď přímo, nebo nepřímo. Chcete-li odstranit typ přímo, zavolejte jeho Dispose metodu try/catch v bloku. Pokud ho chcete zlikvidovat nepřímo, použijte konstruktor jazyka, jako using je (v jazyce C#) nebo Using (v Visual Basic). Další informace naleznete v části Použití objektu, který implementuje IDisposable v IDisposable tématu rozhraní. Všimněte si také, že Dispose() metoda není bezpečná pro vlákna. Všechny ostatní veřejné a chráněné členy BlockingCollection<T> jsou bezpečné pro přístup z více vláken a mohou být použity souběžně z více vláken.

IProducerConsumerCollection<T> představuje kolekci, která umožňuje přidávání a odebírání dat bezpečných vláken. BlockingCollection<T> se používá jako obálka pro IProducerConsumerCollection<T> instanci a umožňuje pokusům o odebrání z kolekce blokovat, dokud nebudou k dispozici data, která se mají odebrat. Podobně můžete vytvořit, abyste BlockingCollection<T> vynucovali horní hranici počtu datových prvků povolených v kolekci IProducerConsumerCollection<T>. Přidání pokusů o kolekci pak může blokovat, dokud nebude k dispozici místo pro uložení přidaných položek. Tímto způsobem BlockingCollection<T> se podobá tradiční blokující datové struktuře fronty, s tím rozdílem, že základní mechanismus úložiště dat je abstrahován jako IProducerConsumerCollection<T>.

BlockingCollection<T> podporuje ohraničování a blokování. Ohraničení znamená, že můžete nastavit maximální kapacitu kolekce. Ohraničení je důležité v určitých scénářích, protože umožňuje řídit maximální velikost kolekce v paměti a brání vytváření vláken v přesunu příliš daleko před spotřebovávací vlákna. Několik vláken nebo úkolů může přidávat položky do kolekce současně a pokud kolekce dosáhne zadané maximální kapacity, vytváření vláken bude blokovat, dokud se položka neodebere. Více příjemců může položky odebrat souběžně a pokud se kolekce stane prázdnou, zablokuje se spotřebová vlákna, dokud producent položku přidá. Výrobní vlákno může volat metodu, která indikuje, že nebudou CompleteAdding přidány žádné další položky. Uživatelé monitorují IsCompleted vlastnost, aby věděli, kdy je kolekce prázdná a nebudou přidány žádné další položky.

Add a Take operace se obvykle provádějí ve smyčce. Smyčku můžete zrušit předáním CancellationToken objektu TryAdd do metody a TryTake následnou kontrolou hodnoty vlastnosti tokenu IsCancellationRequested v každé iteraci. Pokud je truehodnota, je na vás odpovědět na žádost o zrušení vyčištěním všech prostředků a ukončením smyčky.

Při vytváření objektu BlockingCollection<T> můžete zadat nejen ohraničovanou kapacitu, ale také typ kolekce, kterou chcete použít. Můžete například zadat ConcurrentQueue<T> objekt pro první použití, chování FIFO (first out) nebo ConcurrentStack<T> objekt pro poslední spuštění (LIFO). Můžete použít libovolnou třídu kolekce, která implementuje IProducerConsumerCollection<T> rozhraní. Výchozí typ kolekce je BlockingCollection<T> ConcurrentQueue<T>.

Neupravujte přímo podkladovou kolekci. Pomocí BlockingCollection<T> metod můžete přidávat nebo odebírat elementy. Objekt BlockingCollection<T> se může poškodit, pokud přímo změníte podkladovou kolekci.

BlockingCollection<T> nebyl navržen s ohledem na asynchronní přístup. Pokud vaše aplikace vyžaduje asynchronní scénáře producenta nebo příjemce, zvažte místo toho použití Channel<T> .

Konstruktory

BlockingCollection<T>()

Inicializuje novou instanci BlockingCollection<T> třídy bez horní hranice.

BlockingCollection<T>(Int32)

Inicializuje novou instanci BlockingCollection<T> třídy se zadanou horní hranicí.

BlockingCollection<T>(IProducerConsumerCollection<T>)

Inicializuje novou instanci BlockingCollection<T> třídy bez horní hranice a použije poskytnuté IProducerConsumerCollection<T> jako základní úložiště dat.

BlockingCollection<T>(IProducerConsumerCollection<T>, Int32)

Inicializuje novou instanci BlockingCollection<T> třídy se zadanou horní hranicí a použije zadanou IProducerConsumerCollection<T> jako podkladové úložiště dat.

Vlastnosti

BoundedCapacity

Získá ohraničenou kapacitu této BlockingCollection<T> instance.

Count

Získá počet položek obsažených v souboru BlockingCollection<T>.

IsAddingCompleted

Získá, zda je tato BlockingCollection<T> možnost označena jako dokončená pro přidání.

IsCompleted

Získá, zda je tato možnost BlockingCollection<T> označena jako dokončená pro přidání a je prázdná.

Metody

Add(T)

Přidá položku do objektu BlockingCollection<T>.

Add(T, CancellationToken)

Přidá položku do objektu BlockingCollection<T>.

AddToAny(BlockingCollection<T>[], T)

Přidá zadanou položku do některé ze zadaných BlockingCollection<T> instancí.

AddToAny(BlockingCollection<T>[], T, CancellationToken)

Přidá zadanou položku do libovolné z zadaných BlockingCollection<T> instancí.

CompleteAdding()

BlockingCollection<T> Označí instance jako nepřijímající další dodatky.

CopyTo(T[], Int32)

Zkopíruje všechny položky v BlockingCollection<T> instanci do kompatibilního jednorozměrného pole počínaje zadaným indexem cílového pole.

Dispose()

Uvolní všechny prostředky používané aktuální instancí BlockingCollection<T> třídy.

Dispose(Boolean)

Uvolní prostředky používané BlockingCollection<T> instancí.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetConsumingEnumerable()

Poskytuje využití IEnumerable<T> položek v kolekci.

GetConsumingEnumerable(CancellationToken)

Poskytuje využití IEnumerable<T> položek v kolekci.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
Take()

Odebere položku z objektu BlockingCollection<T>.

Take(CancellationToken)

Odebere položku z objektu BlockingCollection<T>.

TakeFromAny(BlockingCollection<T>[], T)

Vezme položku z libovolné ze zadaných BlockingCollection<T> instancí.

TakeFromAny(BlockingCollection<T>[], T, CancellationToken)

Vezme položku z libovolné ze zadaných BlockingCollection<T> instancí při sledování zadaného tokenu zrušení.

ToArray()

Zkopíruje položky z BlockingCollection<T> instance do nového pole.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
TryAdd(T)

Pokusí se přidat zadanou položku do .BlockingCollection<T>

TryAdd(T, Int32)

Pokusí se přidat zadanou položku do BlockingCollection<T> zadaného časového období.

TryAdd(T, Int32, CancellationToken)

Pokusí se přidat zadanou položku do BlockingCollection<T> zadaného časového období při sledování tokenu zrušení.

TryAdd(T, TimeSpan)

Pokusí se přidat zadanou položku do .BlockingCollection<T>

TryAddToAny(BlockingCollection<T>[], T)

Pokusí se přidat zadanou položku do některé ze zadaných BlockingCollection<T> instancí.

TryAddToAny(BlockingCollection<T>[], T, Int32)

Pokusí se přidat zadanou položku do některé ze zadaných BlockingCollection<T> instancí.

TryAddToAny(BlockingCollection<T>[], T, Int32, CancellationToken)

Pokusí se přidat zadanou položku do některé ze zadaných BlockingCollection<T> instancí.

TryAddToAny(BlockingCollection<T>[], T, TimeSpan)

Pokusí se přidat zadanou položku do některé ze zadaných BlockingCollection<T> instancí při sledování zadaného tokenu zrušení.

TryTake(T)

Pokusí se odebrat položku z položky BlockingCollection<T>.

TryTake(T, Int32)

Pokusí se odebrat položku ze zadaného BlockingCollection<T> časového období.

TryTake(T, Int32, CancellationToken)

Pokusí se odebrat položku z BlockingCollection<T> zadaného časového období při pozorování tokenu zrušení.

TryTake(T, TimeSpan)

Pokusí se odebrat položku ze zadaného BlockingCollection<T> časového období.

TryTakeFromAny(BlockingCollection<T>[], T)

Pokusí se odebrat položku z některé ze zadaných BlockingCollection<T> instancí.

TryTakeFromAny(BlockingCollection<T>[], T, Int32)

Pokusí se odebrat položku z některé ze zadaných BlockingCollection<T> instancí.

TryTakeFromAny(BlockingCollection<T>[], T, Int32, CancellationToken)

Pokusí se odebrat položku z některé ze zadaných BlockingCollection<T> instancí.

TryTakeFromAny(BlockingCollection<T>[], T, TimeSpan)

Pokusí se odebrat položku z některé ze zadaných BlockingCollection<T> instancí.

Explicitní implementace rozhraní

ICollection.CopyTo(Array, Int32)

Zkopíruje všechny položky v BlockingCollection<T> instanci do kompatibilního jednorozměrného pole počínaje zadaným indexem cílového pole.

ICollection.IsSynchronized

Získá hodnotu označující, zda je přístup k této ICollection synchronizaci (bezpečné vlákno).

ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu k .ICollection Tato vlastnost není podporována.

IEnumerable.GetEnumerator()

Poskytuje položky IEnumerator v kolekci.

IEnumerable<T>.GetEnumerator()

IEnumerator<T> Poskytuje položky v kolekci.

Metody rozšíření

ToImmutableArray<TSource>(IEnumerable<TSource>)

Vytvoří neměnné pole ze zadané kolekce.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Vytvoří neměnný slovník z existující kolekce prvků a použije transformační funkci na zdrojové klíče.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Vytvoří neměnný slovník na základě určité transformace sekvence.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný slovník jeho obsahu.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný slovník jeho obsahu pomocí zadaného porovnávače klíčů.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný slovník jeho obsahu pomocí zadaných klíčových a hodnotových porovnávačů.

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

Vytvoří výčet sekvence a vytvoří neměnnou sadu hodnot hash jejího obsahu.

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

Vytvoří výčet sekvence, vytvoří neměnnou sadu hodnot hash jejího obsahu a použije zadaný porovnávač rovnosti pro typ sady.

ToImmutableList<TSource>(IEnumerable<TSource>)

Vytvoří výčet sekvence a vytvoří neměnný seznam jeho obsahu.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný seřazený slovník jeho obsahu.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný seřazený slovník jeho obsahu pomocí zadaného porovnávače klíčů.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>)

Vytvoří výčet a transformaci sekvence a vytvoří neměnný seřazený slovník jeho obsahu pomocí zadaných porovnávacích klíčů a hodnot.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

Vytvoří výčet sekvence a vytvoří neměnnou seřazenou sadu jeho obsahu.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Vytvoří výčet sekvence, vytvoří neměnnou seřazenou sadu jeho obsahu a použije zadaný porovnávací modul.

CopyToDataTable<T>(IEnumerable<T>)

DataTable Vrátí hodnotu, která obsahuje kopie DataRow objektů, vzhledem k vstupnímu IEnumerable<T> objektu, kde je DataRowobecný parametr T .

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

Zkopíruje DataRow objekty do zadaného DataTableobjektu , vzhledem k vstupnímu IEnumerable<T> objektu, kde je DataRowobecný parametr T .

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

Zkopíruje DataRow objekty do zadaného DataTableobjektu , vzhledem k vstupnímu IEnumerable<T> objektu, kde je DataRowobecný parametr T .

Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>)

Použije funkci akumulátoru na sekvenci.

Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)

Použije funkci akumulátoru na sekvenci. Zadaná počáteční hodnota akumulátoru se používá jako počáteční hodnota akumulátoru.

Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)

Použije funkci akumulátoru na sekvenci. Zadaná počáteční hodnota se používá jako počáteční hodnota akumulátoru a zadaná funkce slouží k výběru výsledné hodnoty.

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

Určuje, zda všechny prvky sekvence splňují podmínku.

Any<TSource>(IEnumerable<TSource>)

Určuje, zda sekvence obsahuje všechny prvky.

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

Určuje, zda některý prvek sekvence splňuje podmínku.

Append<TSource>(IEnumerable<TSource>, TSource)

Připojí hodnotu na konec sekvence.

AsEnumerable<TSource>(IEnumerable<TSource>)

Vrátí vstup zadaný jako IEnumerable<T>.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vypočítá průměr posloupnosti Decimal hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vypočítá průměr posloupnosti Double hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vypočítá průměr posloupnosti Int32 hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vypočítá průměr posloupnosti Int64 hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vypočítá průměr posloupnosti hodnot null, Decimal které jsou získány vyvoláním transformační funkce pro každý prvek vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vypočítá průměr posloupnosti hodnot null, Double které jsou získány vyvoláním transformační funkce pro každý prvek vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vypočítá průměr posloupnosti hodnot null, Int32 které jsou získány vyvoláním transformační funkce pro každý prvek vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vypočítá průměr posloupnosti hodnot null, Int64 které jsou získány vyvoláním transformační funkce pro každý prvek vstupní sekvence.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vypočítá průměr posloupnosti hodnot null, Single které jsou získány vyvoláním transformační funkce pro každý prvek vstupní sekvence.

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

Vypočítá průměr posloupnosti Single hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Cast<TResult>(IEnumerable)

Přetypuje prvky zadaného IEnumerable typu.

Chunk<TSource>(IEnumerable<TSource>, Int32)

Rozdělí prvky sekvence na bloky velikosti nejvíce size.

Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Zřetězí dvě sekvence.

Contains<TSource>(IEnumerable<TSource>, TSource)

Určuje, zda sekvence obsahuje zadaný prvek pomocí výchozího porovnávače rovnosti.

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

Určuje, zda sekvence obsahuje zadaný prvek pomocí zadané IEqualityComparer<T>.

Count<TSource>(IEnumerable<TSource>)

Vrátí počet prvků v posloupnosti.

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

Vrátí číslo, které představuje, kolik prvků v zadané sekvenci splňuje podmínku.

DefaultIfEmpty<TSource>(IEnumerable<TSource>)

Vrátí prvky zadané sekvence nebo výchozí hodnotu parametru typu v jednotonové kolekci, pokud je sekvence prázdná.

DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource)

Vrátí prvky zadané sekvence nebo zadanou hodnotu v jednotonové kolekci, pokud je sekvence prázdná.

Distinct<TSource>(IEnumerable<TSource>)

Vrátí jedinečné prvky ze sekvence pomocí výchozího porovnávače rovnosti k porovnání hodnot.

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

Vrátí odlišné prvky ze sekvence pomocí zadané IEqualityComparer<T> hodnoty k porovnání hodnot.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Vrátí odlišné prvky ze sekvence podle zadané funkce selektoru klíče.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Vrátí odlišné prvky ze sekvence podle zadané funkce selektoru klíčů a pomocí zadaného porovnávacího nástroje k porovnání klíčů.

ElementAt<TSource>(IEnumerable<TSource>, Index)

Vrátí prvek v zadaném indexu v posloupnosti.

ElementAt<TSource>(IEnumerable<TSource>, Int32)

Vrátí prvek v zadaném indexu v posloupnosti.

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index)

Vrátí prvek v zadaném indexu v posloupnosti nebo výchozí hodnotě, pokud je index mimo rozsah.

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32)

Vrátí prvek v zadaném indexu v posloupnosti nebo výchozí hodnotě, pokud je index mimo rozsah.

Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Vytvoří množinu dvou sekvencí pomocí výchozího porovnávače rovnosti k porovnání hodnot.

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

Vytvoří množinu dvou sekvencí pomocí zadaného IEqualityComparer<T> k porovnání hodnot.

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Vytvoří množinu dvou sekvencí podle zadané funkce selektoru klíče.

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Vytvoří množinu dvou sekvencí podle zadané funkce selektoru klíče.

First<TSource>(IEnumerable<TSource>)

Vrátí první prvek sekvence.

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

Vrátí první prvek v sekvenci, která splňuje zadanou podmínku.

FirstOrDefault<TSource>(IEnumerable<TSource>)

Vrátí první prvek sekvence nebo výchozí hodnotu, pokud sekvence neobsahuje žádné prvky.

FirstOrDefault<TSource>(IEnumerable<TSource>, TSource)

Vrátí první prvek sekvence nebo zadanou výchozí hodnotu, pokud sekvence neobsahuje žádné prvky.

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

Vrátí první prvek sekvence, která splňuje podmínku nebo výchozí hodnotu, pokud se nenajde žádný takový prvek.

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

Vrátí první prvek sekvence, která splňuje podmínku, nebo zadanou výchozí hodnotu, pokud se nenajde žádný takový prvek.

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Seskupí prvky sekvence podle zadané funkce selektoru klíčů.

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a porovná klíče pomocí zadaného porovnávače.

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a zadává prvky pro každou skupinu pomocí zadané funkce.

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Seskupí prvky sekvence podle funkce selektoru klíčů. Klíče se porovnávají pomocí porovnávače a prvky jednotlivých skupin se projektují pomocí zadané funkce.

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

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a vytvoří výslednou hodnotu z každé skupiny a jejího klíče.

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

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a vytvoří výslednou hodnotu z každé skupiny a jejího klíče. Klíče se porovnávají pomocí zadaného porovnávače.

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

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a vytvoří výslednou hodnotu z každé skupiny a jejího klíče. Prvky každé skupiny se projektují pomocí zadané funkce.

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

Seskupí prvky sekvence podle zadané funkce selektoru klíčů a vytvoří výslednou hodnotu z každé skupiny a jejího klíče. Klíčové hodnoty se porovnávají pomocí zadaného porovnávače a prvky každé skupiny se projektují pomocí zadané funkce.

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

Koreluje prvky dvou sekvencí na základě rovnosti klíčů a seskupuje výsledky. Výchozí porovnávač rovnosti se používá k porovnání klíčů.

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

Koreluje prvky dvou sekvencí na základě klíčové rovnosti a seskupuje výsledky. Zadaný IEqualityComparer<T> klíč se používá k porovnání klíčů.

Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Vytvoří průnik dvou sekvencí pomocí výchozího porovnávače rovnosti k porovnání hodnot.

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

Vytvoří průsečík dvou sekvencí pomocí zadaného IEqualityComparer<T> porovnání hodnot.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Vytvoří množinou průsečík dvou sekvencí podle zadané funkce selektoru klíče.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Vytvoří množinou průsečík dvou sekvencí podle zadané funkce selektoru klíče.

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

Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Výchozí porovnávač rovnosti se používá k porovnání klíčů.

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

Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Zadaný IEqualityComparer<T> se používá k porovnání klíčů.

Last<TSource>(IEnumerable<TSource>)

Vrátí poslední prvek sekvence.

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

Vrátí poslední prvek sekvence, která splňuje zadanou podmínku.

LastOrDefault<TSource>(IEnumerable<TSource>)

Vrátí poslední prvek sekvence nebo výchozí hodnotu, pokud sekvence neobsahuje žádné prvky.

LastOrDefault<TSource>(IEnumerable<TSource>, TSource)

Vrátí poslední prvek sekvence nebo zadanou výchozí hodnotu, pokud sekvence neobsahuje žádné prvky.

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

Vrátí poslední prvek sekvence, která splňuje podmínku nebo výchozí hodnotu, pokud se nenajde žádný takový prvek.

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

Vrátí poslední prvek sekvence, která splňuje podmínku, nebo zadanou výchozí hodnotu, pokud se nenajde žádný takový prvek.

LongCount<TSource>(IEnumerable<TSource>)

Vrátí hodnotu Int64 , která představuje celkový počet prvků v posloupnosti.

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

Vrátí hodnotu Int64 , která představuje, kolik prvků v sekvenci splňuje podmínku.

Max<TSource>(IEnumerable<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

Max<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Vrátí maximální hodnotu v obecné sekvenci.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Decimal hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální Double hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí maximální Int32 hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí maximální Int64 hodnotu.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu nullable Decimal .

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu nullable Double .

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu nullable Int32 .

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu nullable Int64 .

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí maximální hodnotu nullable Single .

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

Vyvolá transformační funkci na každém prvku sekvence a vrátí maximální Single hodnotu.

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

Vyvolá transformační funkci pro každý prvek obecné sekvence a vrátí maximální výslednou hodnotu.

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Vrátí maximální hodnotu v obecné sekvenci podle zadané funkce selektoru klíčů.

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Vrátí maximální hodnotu v obecné sekvenci podle zadané funkce selektoru klíčů a porovnávače klíčů.

Min<TSource>(IEnumerable<TSource>)

Vrátí minimální hodnotu v obecné sekvenci.

Min<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Vrátí minimální hodnotu v obecné sekvenci.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí minimální Decimal hodnotu.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí minimální Double hodnotu.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí minimální Int32 hodnotu.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vyvolá transformační funkci pro každý prvek sekvence a vrátí minimální Int64 hodnotu.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí minimální hodnotu nullable Decimal .

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí minimální hodnotu nullable Double .

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí minimální hodnotu nullable Int32 .

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí minimální hodnotu nullable Int64 .

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vyvolá transformační funkci na každém prvku sekvence a vrátí minimální hodnotu nullable Single .

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

Vyvolá transformační funkci pro každý prvek sekvence a vrátí minimální Single hodnotu.

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

Vyvolá transformační funkci pro každý prvek obecné sekvence a vrátí minimální výslednou hodnotu.

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Vrátí minimální hodnotu v obecné sekvenci podle zadané funkce selektoru klíčů.

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Vrátí minimální hodnotu v obecné sekvenci podle zadané funkce selektoru klíčů a porovnávače klíčů.

OfType<TResult>(IEnumerable)

Filtruje prvky IEnumerable založené na zadaném typu.

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Seřadí prvky sekvence vzestupně podle klíče.

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Seřadí prvky sekvence ve vzestupném pořadí pomocí zadaného porovnávače.

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Seřadí prvky sekvence v sestupném pořadí podle klíče.

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Seřadí prvky sekvence v sestupném pořadí pomocí zadaného porovnávače.

Prepend<TSource>(IEnumerable<TSource>, TSource)

Přidá hodnotu na začátek sekvence.

Reverse<TSource>(IEnumerable<TSource>)

Invertuje pořadí prvků v posloupnosti.

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

Prodá jednotlivé prvky sekvence do nového formuláře.

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

Začlení každý prvek sekvence do nového formuláře zahrnutím indexu prvku.

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

Prodá jednotlivé prvky sekvence na IEnumerable<T> sekvenci a zploštějí výsledné sekvence do jedné sekvence.

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

Prodá jednotlivé prvky sekvence na sekvenci IEnumerable<T>a zploštějí výsledné sekvence do jedné sekvence. Index každého zdrojového elementu se používá v projektované podobě tohoto prvku.

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

Zarovná jednotlivé prvky sekvence na IEnumerable<T>sekvenci , zploštějí výsledné sekvence do jedné sekvence a vyvolá funkci selektoru výsledků u každého prvku v něm.

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

Zarovná jednotlivé prvky sekvence na IEnumerable<T>sekvenci , zploštějí výsledné sekvence do jedné sekvence a vyvolá funkci selektoru výsledků u každého prvku v něm. Index každého zdrojového prvku se používá v přechodném projektované podobě tohoto prvku.

SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Určuje, zda jsou dvě sekvence stejné porovnáním prvků pomocí výchozího porovnávače rovnosti pro jejich typ.

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

Určuje, zda jsou dvě sekvence stejné porovnáním jejich prvků pomocí zadaného IEqualityComparer<T>.

Single<TSource>(IEnumerable<TSource>)

Vrátí jediný prvek sekvence a vyvolá výjimku, pokud v sekvenci není přesně jeden prvek.

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

Vrátí jediný prvek sekvence, která splňuje zadanou podmínku, a vyvolá výjimku, pokud existuje více než jeden takový prvek.

SingleOrDefault<TSource>(IEnumerable<TSource>)

Vrátí jediný prvek sekvence nebo výchozí hodnotu, pokud je sekvence prázdná; tato metoda vyvolá výjimku, pokud je v sekvenci více než jeden prvek.

SingleOrDefault<TSource>(IEnumerable<TSource>, TSource)

Vrátí jediný prvek sekvence nebo zadanou výchozí hodnotu, pokud je sekvence prázdná; tato metoda vyvolá výjimku, pokud je v sekvenci více než jeden prvek.

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

Vrátí jediný prvek sekvence, která splňuje zadanou podmínku nebo výchozí hodnotu, pokud takový prvek neexistuje; tato metoda vyvolá výjimku, pokud podmínku splňuje více než jeden prvek.

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

Vrátí jediný prvek sekvence, která splňuje zadanou podmínku, nebo zadanou výchozí hodnotu, pokud neexistuje žádný takový prvek; tato metoda vyvolá výjimku, pokud podmínku splňuje více než jeden prvek.

Skip<TSource>(IEnumerable<TSource>, Int32)

Obchází zadaný počet prvků v posloupnosti a potom vrátí zbývající prvky.

SkipLast<TSource>(IEnumerable<TSource>, Int32)

Vrátí novou výčtovou kolekci, která obsahuje prvky z source posledního count prvku zdrojové kolekce vynechána.

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

Obchází prvky v posloupnosti, pokud je zadaná podmínka pravdivá a vrátí zbývající prvky.

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Obchází prvky v posloupnosti, pokud je zadaná podmínka pravdivá a vrátí zbývající prvky. Index elementu se používá v logice predikátové funkce.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Vypočítá součet posloupnosti Decimal hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Vypočítá součet posloupnosti Double hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Vypočítá součet posloupnosti Int32 hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Vypočítá součet posloupnosti Int64 hodnot, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Vypočítá součet posloupnosti hodnot s možnou Decimal hodnotou null, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Vypočítá součet posloupnosti hodnot s možnou Double hodnotou null, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Vypočítá součet posloupnosti hodnot s možnou Int32 hodnotou null, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Vypočítá součet posloupnosti hodnot s možnou Int64 hodnotou null, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Vypočítá součet posloupnosti hodnot s možnou Single hodnotou null, které jsou získány vyvoláním transformační funkce na každém prvku vstupní sekvence.

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

Vypočítá součet posloupnosti Single hodnot, které jsou získány vyvoláním transformační funkce u každého prvku vstupní sekvence.

Take<TSource>(IEnumerable<TSource>, Int32)

Vrátí zadaný počet souvislých prvků od začátku sekvence.

Take<TSource>(IEnumerable<TSource>, Range)

Vrátí zadanou oblast souvislých prvků ze sekvence.

TakeLast<TSource>(IEnumerable<TSource>, Int32)

Vrátí novou výčtovou kolekci, která obsahuje poslední count prvky z source.

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

Vrátí prvky z posloupnosti, pokud je zadaná podmínka pravdivá.

TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Vrátí prvky z posloupnosti, pokud je zadaná podmínka pravdivá. Index prvku se používá v logice predikátové funkce.

ToArray<TSource>(IEnumerable<TSource>)

Vytvoří pole z objektu IEnumerable<T>.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Dictionary<TKey,TValue> Vytvoří ze zadané funkce selektoru klíčů z IEnumerable<T> závislosti na zadané funkci selektoru klíčů.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> Vytvoří ze zadané funkce selektoru klíčů a porovnávače klíčů z IEnumerable<T> závislosti na zadané funkci selektoru klíčů.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Dictionary<TKey,TValue> Vytvoří ze zadaného selektoru IEnumerable<T> klíče a funkce selektoru prvků.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> Vytvoří ze IEnumerable<T> zadané funkce selektoru klíčů, porovnávače a funkce selektoru prvků.

ToHashSet<TSource>(IEnumerable<TSource>)

HashSet<T> Vytvoří z objektu IEnumerable<T>.

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

HashSet<T> Vytvoří z porovnání IEnumerable<T> klíčů pomocí klávesycomparer.

ToList<TSource>(IEnumerable<TSource>)

List<T> Vytvoří z objektu IEnumerable<T>.

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Lookup<TKey,TElement> Vytvoří z funkce IEnumerable<T> selektoru klíčů podle zadané funkce selektoru klíčů.

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Lookup<TKey,TElement> Vytvoří ze zadané funkce selektoru klíčů a porovnávače klíčů ze IEnumerable<T> zadané funkce.

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Lookup<TKey,TElement> Vytvoří ze zadaného selektoru IEnumerable<T> klíče a funkce selektoru prvků.

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Lookup<TKey,TElement> Vytvoří ze IEnumerable<T> zadané funkce selektoru klíče, porovnávače a funkce selektoru prvků.

TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32)

Pokusí se určit počet prvků v sekvenci bez vynucení výčtu.

Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Vytvoří sjednocovací sadu dvou sekvencí pomocí výchozího porovnávače rovnosti.

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

Vytvoří sjednocovací sadu dvou sekvencí pomocí zadaného IEqualityComparer<T>.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>)

Vytvoří sjednocování dvou sekvencí podle zadané funkce selektoru klíče.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Vytvoří sjednocování dvou sekvencí podle zadané funkce selektoru klíče.

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

Filtruje posloupnost hodnot na základě predikátu.

Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Filtruje posloupnost hodnot na základě predikátu. Index každého prvku se používá v logice predikátové funkce.

Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>)

Vytvoří sekvenci řazených členů s prvky ze dvou zadaných sekvencí.

Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)

Vytvoří sekvenci řazených členů s prvky ze tří zadaných sekvencí.

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

Použije zadanou funkci na odpovídající prvky dvou sekvencí a vytvoří sekvenci výsledků.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsParallel<TSource>(IEnumerable<TSource>)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede na IEnumerable IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Převede obecný IEnumerable<T> na obecný IQueryable<T>.

Ancestors<T>(IEnumerable<T>)

Vrátí kolekci prvků, které obsahují předky každého uzlu ve zdrojové kolekci.

Ancestors<T>(IEnumerable<T>, XName)

Vrátí filtrovanou kolekci prvků, která obsahuje nadřazené prvky každého uzlu ve zdrojové kolekci. V kolekci jsou zahrnuty pouze prvky, které mají shodu XName .

DescendantNodes<T>(IEnumerable<T>)

Vrátí kolekci následnických uzlů každého dokumentu a elementu ve zdrojové kolekci.

Descendants<T>(IEnumerable<T>)

Vrátí kolekci prvků, které obsahují následné prvky každého prvku a dokumentu ve zdrojové kolekci.

Descendants<T>(IEnumerable<T>, XName)

Vrátí filtrovanou kolekci prvků, která obsahuje následné prvky každého prvku a dokumentu ve zdrojové kolekci. V kolekci jsou zahrnuty pouze prvky, které mají shodu XName .

Elements<T>(IEnumerable<T>)

Vrátí kolekci podřízených prvků každého prvku a dokumentu ve zdrojové kolekci.

Elements<T>(IEnumerable<T>, XName)

Vrátí filtrovanou kolekci podřízených prvků každého prvku a dokumentu ve zdrojové kolekci. V kolekci jsou zahrnuty pouze prvky, které mají shodu XName .

InDocumentOrder<T>(IEnumerable<T>)

Vrátí kolekci uzlů, která obsahuje všechny uzly ve zdrojové kolekci seřazené v pořadí dokumentů.

Nodes<T>(IEnumerable<T>)

Vrátí kolekci podřízených uzlů každého dokumentu a elementu ve zdrojové kolekci.

Remove<T>(IEnumerable<T>)

Odebere každý uzel ve zdrojové kolekci z nadřazeného uzlu.

Platí pro

Bezpečný přístup z více vláken

Metoda Dispose není bezpečná pro vlákna. Všechny ostatní veřejné a chráněné členy BlockingCollection<T> jsou bezpečné pro přístup z více vláken a mohou být použity souběžně z více vláken.

Viz také