Teilen über


ConcurrentStack<T> Klasse

Definition

Stellt eine threadsichere letzte In-First Out -Auflistung (LIFO) dar.

generic <typename T>
public ref class ConcurrentStack : System::Collections::Concurrent::IProducerConsumerCollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::ICollection
generic <typename T>
public ref class ConcurrentStack : System::Collections::Concurrent::IProducerConsumerCollection<T>, System::Collections::Generic::IEnumerable<T>
generic <typename T>
public ref class ConcurrentStack : System::Collections::Concurrent::IProducerConsumerCollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IReadOnlyCollection<T>
generic <typename T>
public ref class ConcurrentStack : System::Collections::Concurrent::IProducerConsumerCollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::ICollection
public class ConcurrentStack<T> : System.Collections.Concurrent.IProducerConsumerCollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
[System.Serializable]
public class ConcurrentStack<T> : System.Collections.Concurrent.IProducerConsumerCollection<T>, System.Collections.Generic.IEnumerable<T>
[System.Serializable]
public class ConcurrentStack<T> : System.Collections.Concurrent.IProducerConsumerCollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>
public class ConcurrentStack<T> : System.Collections.Concurrent.IProducerConsumerCollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.ICollection
public class ConcurrentStack<T> : System.Collections.Concurrent.IProducerConsumerCollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>
type ConcurrentStack<'T> = class
    interface IProducerConsumerCollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface ICollection
    interface IReadOnlyCollection<'T>
[<System.Serializable>]
type ConcurrentStack<'T> = class
    interface IProducerConsumerCollection<'T>
    interface seq<'T>
    interface ICollection
    interface IEnumerable
[<System.Serializable>]
type ConcurrentStack<'T> = class
    interface IProducerConsumerCollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface ICollection
    interface IReadOnlyCollection<'T>
type ConcurrentStack<'T> = class
    interface IProducerConsumerCollection<'T>
    interface seq<'T>
    interface ICollection
    interface IEnumerable
Public Class ConcurrentStack(Of T)
Implements ICollection, IEnumerable(Of T), IProducerConsumerCollection(Of T), IReadOnlyCollection(Of T)
Public Class ConcurrentStack(Of T)
Implements IEnumerable(Of T), IProducerConsumerCollection(Of T)
Public Class ConcurrentStack(Of T)
Implements IEnumerable(Of T), IProducerConsumerCollection(Of T), IReadOnlyCollection(Of T)
Public Class ConcurrentStack(Of T)
Implements ICollection, IEnumerable(Of T), IProducerConsumerCollection(Of T)

Typparameter

T

Der Typ der im Stapel enthaltenen Elemente.

Vererbung
ConcurrentStack<T>
Attribute
Implementiert

Beispiele

Das folgende Beispiel zeigt, wie Sie ein ConcurrentStack<T> verwenden, um einzelne Elemente zu übertragen und aufzufüllen:

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

class Example
{
    // Demonstrates:
    //      ConcurrentStack<T>.Push();
    //      ConcurrentStack<T>.TryPeek();
    //      ConcurrentStack<T>.TryPop();
    //      ConcurrentStack<T>.Clear();
    //      ConcurrentStack<T>.IsEmpty;
    static async Task Main()
    {
        int items = 10000;

        ConcurrentStack<int> stack = new ConcurrentStack<int>();

        // Create an action to push items onto the stack
        Action pusher = () =>
        {
            for (int i = 0; i < items; i++)
            {
                stack.Push(i);
            }
        };

        // Run the action once
        pusher();

        if (stack.TryPeek(out int result))
        {
            Console.WriteLine($"TryPeek() saw {result} on top of the stack.");
        }
        else
        {
            Console.WriteLine("Could not peek most recently added number.");
        }

        // Empty the stack
        stack.Clear();

        if (stack.IsEmpty)
        {
            Console.WriteLine("Cleared the stack.");
        }

        // Create an action to push and pop items
        Action pushAndPop = () =>
        {
            Console.WriteLine($"Task started on {Task.CurrentId}");

            int item;
            for (int i = 0; i < items; i++)
                stack.Push(i);
            for (int i = 0; i < items; i++)
                stack.TryPop(out item);

            Console.WriteLine($"Task ended on {Task.CurrentId}");
        };

        // Spin up five concurrent tasks of the action
        var tasks = new Task[5];
        for (int i = 0; i < tasks.Length; i++)
            tasks[i] = Task.Factory.StartNew(pushAndPop);

        // Wait for all the tasks to finish up
        await Task.WhenAll(tasks);

        if (!stack.IsEmpty)
        {
            Console.WriteLine("Did not take all the items off the stack");
        }
    }
}
open System
open System.Collections.Concurrent
open System.Threading.Tasks

// Demonstrates:
//      ConcurrentStack<T>.Push();
//      ConcurrentStack<T>.TryPeek();
//      ConcurrentStack<T>.TryPop();
//      ConcurrentStack<T>.Clear();
//      ConcurrentStack<T>.IsEmpty;

let main =
    task {
        let items = 10000
        let stack = ConcurrentStack<int>()

        // Create an action to push items onto the stack
        let pusher =
            Action(fun () ->
                for i = 0 to items - 1 do
                    stack.Push i)

        // Run the action once
        pusher.Invoke()
        let mutable result = 0

        if stack.TryPeek &result then
            printfn $"TryPeek() saw {result} on top of the stack."
        else
            printfn "Could not peek most recently added number."

        // Empty the stack
        stack.Clear()

        if stack.IsEmpty then
            printfn "Cleared the stack."

        // Create an action to push and pop items
        let pushAndPop =
            Action(fun () ->
                printfn $"Task started on {Task.CurrentId}"

                let mutable item = 0

                for i = 0 to items - 1 do
                    stack.Push i

                for i = 0 to items - 1 do
                    stack.TryPop &item |> ignore

                printfn $"Task ended on {Task.CurrentId}")
        // Spin up five concurrent tasks of the action
        let tasks =
            [| for i = 0 to 4 do
                   Task.Run pushAndPop |]

        // Wait for all the tasks to finish up
        do! Task.WhenAll tasks

        if not stack.IsEmpty then
            printfn "Did not take all the items off the stack"
    }

main.Wait()
Imports System.Collections.Concurrent
Imports System.Threading.Tasks

Class Example
    ' Demonstrates:
    '   ConcurrentStack<T>.Push();
    '   ConcurrentStack<T>.TryPeek();
    '   ConcurrentStack<T>.TryPop();
    '   ConcurrentStack<T>.Clear();
    '   ConcurrentStack<T>.IsEmpty;
    Shared Sub Main()
        Dim items As Integer = 10000
        Dim stack As ConcurrentStack(Of Integer) = New ConcurrentStack(Of Integer)()

        ' Create an action to push items onto the stack
        Dim pusher As Action = Function()
                                   For i As Integer = 0 To items - 1
                                       stack.Push(i)
                                   Next
                               End Function

        ' Run the action once
        pusher()

        Dim result As Integer = Nothing

        If stack.TryPeek(result) Then
            Console.WriteLine($"TryPeek() saw {result} on top of the stack.")
        Else
            Console.WriteLine("Could not peek most recently added number.")
        End If

        ' Empty the stack
        stack.Clear()

        If stack.IsEmpty Then
            Console.WriteLine("Cleared the stack.")
        End If

        ' Create an action to push and pop items
        Dim pushAndPop As Action = Function()
                                       Console.WriteLine($"Task started on {Task.CurrentId}")
                                       Dim item As Integer

                                       For i As Integer = 0 To items - 1
                                           stack.Push(i)
                                       Next

                                       For i As Integer = 0 To items - 1
                                           stack.TryPop(item)
                                       Next

                                       Console.WriteLine($"Task ended on {Task.CurrentId}")
                                   End Function

        ' Spin up five concurrent tasks of the action
        Dim tasks = New Task(4) {}
        For i As Integer = 0 To tasks.Length - 1
            tasks(i) = Task.Factory.StartNew(pushAndPop)
        Next

        ' Wait for all the tasks to finish up
        Task.WaitAll(tasks)

        If Not stack.IsEmpty Then
            Console.WriteLine("Did not take all the items off the stack")
        End If
    End Sub
End Class

Das folgende Beispiel zeigt, wie Sie mithilfe eines ConcurrentStack<T> Elemente verschieben und auffüllen können:

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

class Example
{
    // Demonstrates:
    //      ConcurrentStack<T>.PushRange();
    //      ConcurrentStack<T>.TryPopRange();
    static async Task Main()
    {
        int numParallelTasks = 4;
        int numItems = 1000;
        var stack = new ConcurrentStack<int>();

        // Push a range of values onto the stack concurrently
        await Task.WhenAll(Enumerable.Range(0, numParallelTasks).Select(i => Task.Factory.StartNew((state) =>
        {
            // state = i * numItems
            int index = (int)state;
            int[] array = new int[numItems];
            for (int j = 0; j < numItems; j++)
            {
                array[j] = index + j;
            }

            Console.WriteLine($"Pushing an array of ints from {array[0]} to {array[numItems - 1]}");
            stack.PushRange(array);
        }, i * numItems, CancellationToken.None, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default)).ToArray());

        int numTotalElements = 4 * numItems;
        int[] resultBuffer = new int[numTotalElements];
        await Task.WhenAll(Enumerable.Range(0, numParallelTasks).Select(i => Task.Factory.StartNew(obj =>
        {
            int index = (int)obj;
            int result = stack.TryPopRange(resultBuffer, index, numItems);

            Console.WriteLine($"TryPopRange expected {numItems}, got {result}.");
        }, i * numItems, CancellationToken.None, TaskCreationOptions.LongRunning, TaskScheduler.Default)).ToArray());

        for (int i = 0; i < numParallelTasks; i++)
        {
            // Create a sequence we expect to see from the stack taking the last number of the range we inserted
            var expected = Enumerable.Range(resultBuffer[i*numItems + numItems - 1], numItems);

            // Take the range we inserted, reverse it, and compare to the expected sequence
            var areEqual = expected.SequenceEqual(resultBuffer.Skip(i * numItems).Take(numItems).Reverse());
            if (areEqual)
            {
                Console.WriteLine($"Expected a range of {expected.First()} to {expected.Last()}. Got {resultBuffer[i * numItems + numItems - 1]} to {resultBuffer[i * numItems]}");
            }
            else
            {
                Console.WriteLine($"Unexpected consecutive ranges.");
            }
        }
    }
}
open System.Collections.Concurrent
open System.Linq
open System.Threading
open System.Threading.Tasks

// Demonstrates:
//      ConcurrentStack<T>.PushRange();
//      ConcurrentStack<T>.TryPopRange();

let main = 
    task {
        let numParallelTasks = 4
        let numItems = 1000
        let stack = ConcurrentStack<int>()

        // Push a range of values onto the stack concurrently
        let! _ = Task.WhenAll(Enumerable.Range(0, numParallelTasks).Select(fun i -> 
            Task.Factory.StartNew((fun state ->
                // state = i * numItems
                let index: int = unbox state
                let array = 
                    [|  for j in 0 .. numItems - 1 do
                            index + j |]
                printfn $"Pushing an array of ints from {array[0]} to {array[numItems - 1]}"
                stack.PushRange array
            ), i * numItems, CancellationToken.None, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default)).ToArray())

        let numTotalElements = 4 * numItems
        let resultBuffer = Array.zeroCreate numTotalElements
        let! _ = Task.WhenAll(Enumerable.Range(0, numParallelTasks).Select(fun i -> 
            Task.Factory.StartNew((fun obj ->
                let index = unbox obj
                let result = stack.TryPopRange(resultBuffer, index, numItems)
                printfn $"TryPopRange expected {numItems}, got {result}."
            ), i * numItems, CancellationToken.None, TaskCreationOptions.LongRunning, TaskScheduler.Default)).ToArray())

        for i = 0 to numParallelTasks - 1 do
            // Create a sequence we expect to see from the stack taking the last number of the range we inserted
            let expected = Enumerable.Range(resultBuffer[i*numItems + numItems - 1], numItems)

            // Take the range we inserted, reverse it, and compare to the expected sequence
            let areEqual = expected.SequenceEqual(resultBuffer.Skip(i * numItems).Take(numItems).Reverse())
            if areEqual then
                printfn $"Expected a range of {expected.First()} to {expected.Last()}. Got {resultBuffer[i * numItems + numItems - 1]} to {resultBuffer[i * numItems]}"
            else
                printfn $"Unexpected consecutive ranges."
    }
main.Wait()
Imports System.Collections.Concurrent
Imports System.Linq
Imports System.Threading
Imports System.Threading.Tasks

Class Example
    ' Demonstrates:
    '   ConcurrentStack<T>.PushRange();
    '   ConcurrentStack<T>.TryPopRange();
    Shared Sub Main()
        Dim numParallelTasks As Integer = 4
        Dim numItems As Integer = 1000
        Dim stack = New ConcurrentStack(Of Integer)()

        ' Push a range of values onto the stack concurrently
        Task.WaitAll(Enumerable.Range(0, numParallelTasks).[Select](
                     Function(i) Task.Factory.StartNew(
                        Function(state)
                            Dim index As Integer = CInt(state)
                            Dim array As Integer() = New Integer(numItems - 1) {}

                            For j As Integer = 0 To numItems - 1
                                array(j) = index + j
                            Next

                            Console.WriteLine($"Pushing an array of ints from {array(0)} to {array(numItems - 1)}")
                            stack.PushRange(array)
                        End Function, i * numItems, CancellationToken.None, TaskCreationOptions.DenyChildAttach, TaskScheduler.[Default])).ToArray())


        Dim numTotalElements As Integer = 4 * numItems
        Dim resultBuffer As Integer() = New Integer(numTotalElements - 1) {}
        Task.WaitAll(Enumerable.Range(0, numParallelTasks).[Select](
                     Function(i) Task.Factory.StartNew(
                        Function(obj)
                            Dim index As Integer = CInt(obj)
                            Dim result As Integer = stack.TryPopRange(resultBuffer, index, numItems)
                            Console.WriteLine($"TryPopRange expected {numItems}, got {result}.")
                        End Function, i * numItems, CancellationToken.None, TaskCreationOptions.LongRunning, TaskScheduler.[Default])).ToArray())

        For i As Integer = 0 To numParallelTasks - 1
            ' Create a sequence we expect to see from the stack taking the last number of the range we inserted
            Dim expected = Enumerable.Range(resultBuffer(i * numItems + numItems - 1), numItems)

            ' Take the range we inserted, reverse it, and compare to the expected sequence
            Dim areEqual = expected.SequenceEqual(resultBuffer.Skip(i * numItems).Take(numItems).Reverse())

            If areEqual Then
                Console.WriteLine($"Expected a range of {expected.First()} to {expected.Last()}. Got {resultBuffer(i * numItems + numItems - 1)} to {resultBuffer(i * numItems)}")
            Else
                Console.WriteLine($"Unexpected consecutive ranges.")
            End If
        Next
    End Sub
End Class

Hinweise

Anmerkung

ConcurrentStack<T> implementiert die IReadOnlyCollection<T> Schnittstelle beginnend mit .NET Framework 4.6; in früheren Versionen von .NET Framework wurde diese Schnittstelle von der ConcurrentStack<T>-Klasse nicht implementiert.

ConcurrentStack<T> bietet einige Hauptvorgänge:

Konstruktoren

ConcurrentStack<T>()

Initialisiert eine neue Instanz der ConcurrentStack<T> Klasse.

ConcurrentStack<T>(IEnumerable<T>)

Initialisiert eine neue Instanz der ConcurrentStack<T> Klasse, die Elemente enthält, die aus der angegebenen Auflistung kopiert wurden.

Eigenschaften

Count

Ruft die Anzahl der Elemente ab, die in der ConcurrentStack<T>enthalten sind.

IsEmpty

Ruft einen Wert ab, der angibt, ob die ConcurrentStack<T> leer ist.

Methoden

Clear()

Entfernt alle Objekte aus dem ConcurrentStack<T>.

CopyTo(T[], Int32)

Kopiert die ConcurrentStack<T> Elemente in eine vorhandene eindimensionale Arraybeginnend mit dem angegebenen Arrayindex.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetEnumerator()

Gibt einen Enumerator zurück, der durch die ConcurrentStack<T>durchläuft.

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
Push(T)

Fügt oben im ConcurrentStack<T>ein Objekt ein.

PushRange(T[])

Fügt mehrere Objekte am oberen Rand der ConcurrentStack<T> atomar ein.

PushRange(T[], Int32, Int32)

Fügt mehrere Objekte am oberen Rand der ConcurrentStack<T> atomar ein.

ToArray()

Kopiert die im ConcurrentStack<T> gespeicherten Elemente in ein neues Array.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TryPeek(T)

Versucht, ein Objekt vom oberen Rand des ConcurrentStack<T> zurückzugeben, ohne es zu entfernen.

TryPop(T)

Versucht, das Objekt oben im ConcurrentStack<T>einzugeben und zurückzugeben.

TryPopRange(T[])

Versucht, mehrere Objekte vom oberen Rand des ConcurrentStack<T> atomisch zu füllen und zurückzugeben.

TryPopRange(T[], Int32, Int32)

Versucht, mehrere Objekte vom oberen Rand des ConcurrentStack<T> atomisch zu füllen und zurückzugeben.

Explizite Schnittstellenimplementierungen

ICollection.CopyTo(Array, Int32)

Kopiert die Elemente des ICollection in einen Array, beginnend bei einem bestimmten Array Index.

ICollection.IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf die ICollection mit syncRoot synchronisiert wird.

ICollection.SyncRoot

Ruft ein Objekt ab, das zum Synchronisieren des Zugriffs auf die ICollectionverwendet werden kann. Diese Eigenschaft wird nicht unterstützt.

IEnumerable.GetEnumerator()

Gibt einen Enumerator zurück, der eine Auflistung durchläuft.

IProducerConsumerCollection<T>.TryAdd(T)

Versucht, dem IProducerConsumerCollection<T>ein Objekt hinzuzufügen.

IProducerConsumerCollection<T>.TryTake(T)

Versucht, ein Objekt aus dem IProducerConsumerCollection<T>zu entfernen und zurückzugeben.

Erweiterungsmethoden

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

Erstellt eine FrozenDictionary<TKey,TValue> aus einer IEnumerable<T> entsprechend der angegebenen Tastenauswahlfunktion.

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

Erstellt eine FrozenDictionary<TKey,TValue> aus einer IEnumerable<T> gemäß den angegebenen Schlüsselauswahl- und Elementauswahlfunktionen.

ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>)

Erstellt eine FrozenSet<T> mit den angegebenen Werten.

ToImmutableArray<TSource>(IEnumerable<TSource>)

Erstellt ein unveränderliches Array aus der angegebenen Auflistung.

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

Erstellt ein unveränderliches Wörterbuch aus einer vorhandenen Auflistung von Elementen, wobei eine Transformationsfunktion auf die Quellschlüssel angewendet wird.

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

Erstellt ein unveränderliches Wörterbuch basierend auf einer Transformation einer Sequenz.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches Wörterbuch seiner Inhalte.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches Wörterbuch seiner Inhalte mithilfe des angegebenen Schlüsselabgleichs.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches Wörterbuch seiner Inhalte mithilfe des angegebenen Schlüssel- und Wertabgleichs.

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

Listet eine Sequenz auf und erzeugt einen unveränderlichen Hashsatz seiner Inhalte.

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

Listet eine Sequenz auf, erzeugt einen unveränderlichen Hashsatz seines Inhalts und verwendet den angegebenen Gleichheitsabgleich für den Settyp.

ToImmutableList<TSource>(IEnumerable<TSource>)

Listet eine Sequenz auf und erzeugt eine unveränderliche Liste seiner Inhalte.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches sortiertes Wörterbuch seiner Inhalte.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches sortiertes Wörterbuch seiner Inhalte mithilfe des angegebenen Schlüsselabgleichs.

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

Enumeiert und transformiert eine Sequenz und erzeugt ein unveränderliches sortiertes Wörterbuch seiner Inhalte mithilfe des angegebenen Schlüssel- und Wertabgleichs.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

Listet eine Sequenz auf und erzeugt einen unveränderlichen sortierten Satz seiner Inhalte.

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

Listet eine Sequenz auf, erzeugt einen unveränderlichen sortierten Satz seines Inhalts und verwendet den angegebenen Vergleich.

CopyToDataTable<T>(IEnumerable<T>)

Gibt einen DataTable zurück, der Kopien der DataRow -Objekte enthält, vorausgesetzt, ein Eingabeobjekt IEnumerable<T>, bei dem der generische Parameter TDataRowist.

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

Kopiert DataRow Objekte in den angegebenen DataTable, wenn ein Eingabeobjekt IEnumerable<T> objekt, wobei der generische Parameter TDataRowist.

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

Kopiert DataRow Objekte in den angegebenen DataTable, wenn ein Eingabeobjekt IEnumerable<T> objekt, wobei der generische Parameter TDataRowist.

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

Wendet eine Akkumulatorfunktion auf eine Sequenz an.

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

Wendet eine Akkumulatorfunktion auf eine Sequenz an. Der angegebene Ausgangswert wird als anfänglicher Akkumulatorwert verwendet.

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

Wendet eine Akkumulatorfunktion auf eine Sequenz an. Der angegebene Ausgangswert wird als anfänglicher Akkumulatorwert verwendet, und die angegebene Funktion wird verwendet, um den Ergebniswert auszuwählen.

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

Stellt eine threadsichere letzte In-First Out -Auflistung (LIFO) dar.

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

Stellt eine threadsichere letzte In-First Out -Auflistung (LIFO) dar.

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

Bestimmt, ob alle Elemente einer Sequenz eine Bedingung erfüllen.

Any<TSource>(IEnumerable<TSource>)

Bestimmt, ob eine Sequenz Elemente enthält.

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

Bestimmt, ob ein Element einer Sequenz eine Bedingung erfüllt.

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

Fügt einen Wert an das Ende der Sequenz an.

AsEnumerable<TSource>(IEnumerable<TSource>)

Gibt die eingegebene Eingabe als IEnumerable<T>zurück.

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

Berechnet den Mittelwert einer Sequenz von Decimal Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz von Double Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz von Int32 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz von Int64 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz nullabler Decimal Werte, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz nullabler Double Werte, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz nullabler Int32 Werte, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz nullabler Int64 Werte, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz nullabler Single Werte, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet den Mittelwert einer Sequenz von Single Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um.

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

Teilt die Elemente einer Sequenz in Teile der Größe auf, die höchstens size.

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

Verkettet zwei Sequenzen.

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

Bestimmt, ob eine Sequenz ein angegebenes Element mithilfe des Standardmäßigen Gleichheitsabgleichs enthält.

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

Bestimmt, ob eine Sequenz ein angegebenes Element enthält, indem ein angegebenes IEqualityComparer<T>verwendet wird.

Count<TSource>(IEnumerable<TSource>)

Gibt die Anzahl der Elemente in einer Sequenz zurück.

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

Gibt eine Zahl zurück, die angibt, wie viele Elemente in der angegebenen Sequenz eine Bedingung erfüllen.

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

Stellt eine threadsichere letzte In-First Out -Auflistung (LIFO) dar.

DefaultIfEmpty<TSource>(IEnumerable<TSource>)

Gibt die Elemente der angegebenen Sequenz oder des Standardwerts des Typparameters in einer Singleton -Auflistung zurück, wenn die Sequenz leer ist.

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

Gibt die Elemente der angegebenen Sequenz oder den angegebenen Wert in einer Singleton -Auflistung zurück, wenn die Sequenz leer ist.

Distinct<TSource>(IEnumerable<TSource>)

Gibt unterschiedliche Elemente aus einer Sequenz zurück, indem der Standardgleichstellungsabgleich verwendet wird, um Werte zu vergleichen.

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

Gibt unterschiedliche Elemente aus einer Sequenz zurück, indem ein angegebenes IEqualityComparer<T> zum Vergleichen von Werten verwendet wird.

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

Gibt unterschiedliche Elemente aus einer Sequenz gemäß einer angegebenen Schlüsselauswahlfunktion zurück.

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

Gibt unterschiedliche Elemente aus einer Sequenz gemäß einer angegebenen Schlüsselmarkierfunktion zurück und verwendet einen angegebenen Vergleich zum Vergleichen von Tasten.

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

Gibt das Element an einem angegebenen Index in einer Sequenz zurück.

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

Gibt das Element an einem angegebenen Index in einer Sequenz zurück.

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

Gibt das Element an einem angegebenen Index in einer Sequenz oder einem Standardwert zurück, wenn der Index außerhalb des Bereichs liegt.

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

Gibt das Element an einem angegebenen Index in einer Sequenz oder einem Standardwert zurück, wenn der Index außerhalb des Bereichs liegt.

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

Erzeugt den Satzunterschied von zwei Sequenzen mithilfe des Standardgleichgleichsabgleichs zum Vergleichen von Werten.

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

Erzeugt den Satzunterschied zweier Sequenzen mithilfe der angegebenen IEqualityComparer<T> zum Vergleichen von Werten.

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

Erzeugt den Satzunterschied von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

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

Erzeugt den Satzunterschied von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

First<TSource>(IEnumerable<TSource>)

Gibt das erste Element einer Sequenz zurück.

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

Gibt das erste Element in einer Sequenz zurück, das eine angegebene Bedingung erfüllt.

FirstOrDefault<TSource>(IEnumerable<TSource>)

Gibt das erste Element einer Sequenz oder einen Standardwert zurück, wenn die Sequenz keine Elemente enthält.

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

Gibt das erste Element einer Sequenz oder einen angegebenen Standardwert zurück, wenn die Sequenz keine Elemente enthält.

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

Gibt das erste Element der Sequenz zurück, das eine Bedingung oder einen Standardwert erfüllt, wenn kein solches Element gefunden wird.

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

Gibt das erste Element der Sequenz zurück, das eine Bedingung erfüllt, oder einen angegebenen Standardwert, wenn kein solches Element gefunden wird.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und vergleicht die Tasten mithilfe eines angegebenen Vergleichs.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und projiziert die Elemente für jede Gruppe mithilfe einer angegebenen Funktion.

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

Gruppiert die Elemente einer Sequenz entsprechend einer Tastenauswahlfunktion. Die Schlüssel werden mithilfe eines Vergleichs verglichen, und die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselmarkierfunktion und erstellt einen Ergebniswert aus jeder Gruppe und dem zugehörigen Schlüssel.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselmarkierfunktion und erstellt einen Ergebniswert aus jeder Gruppe und dem zugehörigen Schlüssel. Die Schlüssel werden mithilfe eines angegebenen Vergleichs verglichen.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselmarkierfunktion und erstellt einen Ergebniswert aus jeder Gruppe und dem zugehörigen Schlüssel. Die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert.

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

Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselmarkierfunktion und erstellt einen Ergebniswert aus jeder Gruppe und dem zugehörigen Schlüssel. Schlüsselwerte werden mithilfe eines angegebenen Vergleichs verglichen, und die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert.

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

Korreliert die Elemente zweier Sequenzen basierend auf der Gleichheit von Schlüsseln und gruppiert die Ergebnisse. Der Standardmäßige Gleichheitsvergleich wird zum Vergleichen von Schlüsseln verwendet.

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

Korreliert die Elemente zweier Sequenzen basierend auf schlüsselgleicher Gleichheit und gruppiert die Ergebnisse. Ein angegebenes IEqualityComparer<T> wird zum Vergleichen von Schlüsseln verwendet.

Index<TSource>(IEnumerable<TSource>)

Gibt eine Aufzählung zurück, die den Index des Elements in ein Tupel einschließt.

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

Erzeugt die festgelegte Schnittmenge von zwei Sequenzen mithilfe des Standardgleichgleichsabgleichs zum Vergleichen von Werten.

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

Erzeugt die festgelegte Schnittmenge von zwei Sequenzen mithilfe der angegebenen IEqualityComparer<T> zum Vergleichen von Werten.

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

Erzeugt die festgelegte Schnittmenge von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

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

Erzeugt die festgelegte Schnittmenge von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

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

Korreliert die Elemente zweier Sequenzen basierend auf übereinstimmenden Schlüsseln. Der Standardmäßige Gleichheitsvergleich wird zum Vergleichen von Schlüsseln verwendet.

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

Korreliert die Elemente zweier Sequenzen basierend auf übereinstimmenden Schlüsseln. Ein angegebenes IEqualityComparer<T> wird zum Vergleichen von Schlüsseln verwendet.

Last<TSource>(IEnumerable<TSource>)

Gibt das letzte Element einer Sequenz zurück.

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

Gibt das letzte Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt.

LastOrDefault<TSource>(IEnumerable<TSource>)

Gibt das letzte Element einer Sequenz oder einen Standardwert zurück, wenn die Sequenz keine Elemente enthält.

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

Gibt das letzte Element einer Sequenz oder einen angegebenen Standardwert zurück, wenn die Sequenz keine Elemente enthält.

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

Gibt das letzte Element einer Sequenz zurück, das eine Bedingung oder einen Standardwert erfüllt, wenn kein solches Element gefunden wird.

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

Gibt das letzte Element einer Sequenz zurück, das eine Bedingung erfüllt, oder einen angegebenen Standardwert, wenn kein solches Element gefunden wird.

LongCount<TSource>(IEnumerable<TSource>)

Gibt einen Int64 zurück, der die Gesamtanzahl der Elemente in einer Sequenz darstellt.

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

Gibt einen Int64 zurück, der angibt, wie viele Elemente in einer Sequenz eine Bedingung erfüllen.

Max<TSource>(IEnumerable<TSource>)

Gibt den Maximalwert in einer generischen Sequenz zurück.

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

Gibt den Maximalwert in einer generischen Sequenz zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximalen Decimal Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximalen Double Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximalen Int32 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximalen Int64 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximal nullfähigen Decimal Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximal nullfähigen Double Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximal nullfähigen Int32 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximal nullfähigen Int64 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximal nullfähigen Single Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den maximalen Single Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer generischen Sequenz auf und gibt den maximal resultierenden Wert zurück.

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

Gibt den Maximalwert in einer generischen Sequenz gemäß einer angegebenen Schlüsselmarkierfunktion zurück.

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

Gibt den Maximalwert in einer generischen Sequenz gemäß einer angegebenen Schlüsselmarkierfunktion und einem Schlüsselabgleich zurück.

Min<TSource>(IEnumerable<TSource>)

Gibt den Minimalwert in einer generischen Sequenz zurück.

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

Gibt den Minimalwert in einer generischen Sequenz zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimalen Decimal Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimalen Double Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimalen Int32 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimalen Int64 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimal nullfähigen Decimal Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimal nullfähigen Double Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimal nullfähigen Int32 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimal nullfähigen Int64 Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimal nullfähigen Single Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer Sequenz auf und gibt den minimalen Single Wert zurück.

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

Ruft eine Transformationsfunktion für jedes Element einer generischen Sequenz auf und gibt den minimalen resultierenden Wert zurück.

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

Gibt den Minimalwert in einer generischen Sequenz gemäß einer angegebenen Schlüsselmarkierfunktion zurück.

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

Gibt den Minimalwert in einer generischen Sequenz gemäß einer angegebenen Schlüsselauswahlfunktion und einem Schlüsselabgleich zurück.

OfType<TResult>(IEnumerable)

Filtert die Elemente einer IEnumerable basierend auf einem angegebenen Typ.

Order<T>(IEnumerable<T>)

Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge.

Order<T>(IEnumerable<T>, IComparer<T>)

Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge.

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

Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge nach einem Schlüssel.

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

Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge mithilfe eines angegebenen Vergleichs.

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

Sortiert die Elemente einer Sequenz in absteigender Reihenfolge nach einem Schlüssel.

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

Sortiert die Elemente einer Sequenz in absteigender Reihenfolge mithilfe eines angegebenen Vergleichs.

OrderDescending<T>(IEnumerable<T>)

Sortiert die Elemente einer Sequenz in absteigender Reihenfolge.

OrderDescending<T>(IEnumerable<T>, IComparer<T>)

Sortiert die Elemente einer Sequenz in absteigender Reihenfolge.

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

Fügt am Anfang der Sequenz einen Wert hinzu.

Reverse<TSource>(IEnumerable<TSource>)

Invertiert die Reihenfolge der Elemente in einer Sequenz.

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

Projiziert jedes Element einer Sequenz in ein neues Formular.

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

Projiziert jedes Element einer Sequenz in ein neues Formular, indem er den Index des Elements einbezieht.

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

Projiziert jedes Element einer Sequenz auf eine IEnumerable<T> und vereinfacht die resultierenden Sequenzen in eine Sequenz.

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

Projiziert jedes Element einer Sequenz auf eine IEnumerable<T>und schmeichelt die resultierenden Sequenzen in einer Sequenz ab. Der Index der einzelnen Quellelemente wird in der projizierten Form dieses Elements verwendet.

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

Projiziert jedes Element einer Sequenz auf eine IEnumerable<T>, schmeichelt die resultierenden Sequenzen in eine Sequenz und ruft eine Ergebnismarkierfunktion für jedes element darin auf.

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

Projiziert jedes Element einer Sequenz auf eine IEnumerable<T>, schmeichelt die resultierenden Sequenzen in eine Sequenz und ruft eine Ergebnismarkierfunktion für jedes element darin auf. Der Index der einzelnen Quellelemente wird in der zwischen projizierten Form dieses Elements verwendet.

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

Bestimmt, ob zwei Sequenzen gleich sind, indem die Elemente mithilfe des Standardmäßigen Gleichheitsabgleichs für ihren Typ verglichen werden.

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

Bestimmt, ob zwei Sequenzen gleich sind, indem sie ihre Elemente mithilfe einer angegebenen IEqualityComparer<T>vergleichen.

Single<TSource>(IEnumerable<TSource>)

Gibt das einzige Element einer Sequenz zurück und löst eine Ausnahme aus, wenn nicht genau ein Element in der Sequenz vorhanden ist.

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

Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, und löst eine Ausnahme aus, wenn mehr als ein solches Element vorhanden ist.

SingleOrDefault<TSource>(IEnumerable<TSource>)

Gibt das einzige Element einer Sequenz oder einen Standardwert zurück, wenn die Sequenz leer ist; Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente in der Sequenz vorhanden sind.

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

Gibt das einzige Element einer Sequenz oder einen angegebenen Standardwert zurück, wenn die Sequenz leer ist; Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente in der Sequenz vorhanden sind.

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

Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung oder einen Standardwert erfüllt, wenn kein solches Element vorhanden ist; Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente die Bedingung erfüllen.

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

Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, oder einen angegebenen Standardwert, wenn kein solches Element vorhanden ist; Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente die Bedingung erfüllen.

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

Umgeht eine angegebene Anzahl von Elementen in einer Sequenz und gibt dann die verbleibenden Elemente zurück.

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

Gibt eine neue aufzählbare Auflistung zurück, die die Elemente aus source enthält, wobei die letzten count Elemente der Quellauflistung weggelassen werden.

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

Umgeht Elemente in einer Sequenz, solange eine angegebene Bedingung wahr ist, und gibt dann die verbleibenden Elemente zurück.

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

Umgeht Elemente in einer Sequenz, solange eine angegebene Bedingung wahr ist, und gibt dann die verbleibenden Elemente zurück. Der Index des Elements wird in der Logik der Prädikatfunktion verwendet.

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

Berechnet die Summe der Sequenz von Decimal Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von Double Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von Int32 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von Int64 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von nullablen Decimal Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von nullablen Double Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von nullablen Int32 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von nullablen Int64 Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von nullablen Single Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Berechnet die Summe der Sequenz von Single Werten, die durch Aufrufen einer Transformationsfunktion für jedes Element der Eingabesequenz abgerufen werden.

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

Gibt eine angegebene Anzahl zusammenhängender Elemente vom Anfang einer Sequenz zurück.

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

Gibt einen angegebenen Bereich zusammenhängender Elemente aus einer Sequenz zurück.

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

Gibt eine neue enumerationsfähige Auflistung zurück, die die letzten count Elemente aus sourceenthält.

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

Gibt Elemente aus einer Sequenz zurück, solange eine angegebene Bedingung wahr ist.

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

Gibt Elemente aus einer Sequenz zurück, solange eine angegebene Bedingung wahr ist. Der Index des Elements wird in der Logik der Prädikatfunktion verwendet.

ToArray<TSource>(IEnumerable<TSource>)

Erstellt ein Array aus einem IEnumerable<T>.

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

Erstellt eine Dictionary<TKey,TValue> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion.

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

Erstellt eine Dictionary<TKey,TValue> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion und einem Schlüsselvergleich.

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

Erstellt eine Dictionary<TKey,TValue> aus einer IEnumerable<T> gemäß den angegebenen Schlüsselauswahl- und Elementauswahlfunktionen.

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

Erstellt eine Dictionary<TKey,TValue> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion, einem Vergleichsmodul und einer Elementauswahlfunktion.

ToHashSet<TSource>(IEnumerable<TSource>)

Erstellt eine HashSet<T> aus einem IEnumerable<T>.

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

Erstellt mithilfe des comparer zum Vergleichen von Schlüsseln eine HashSet<T> aus einem IEnumerable<T>.

ToList<TSource>(IEnumerable<TSource>)

Erstellt eine List<T> aus einem IEnumerable<T>.

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

Erstellt eine Lookup<TKey,TElement> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion.

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

Erstellt eine Lookup<TKey,TElement> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion und einem Schlüsselvergleich.

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

Erstellt eine Lookup<TKey,TElement> aus einer IEnumerable<T> gemäß den angegebenen Schlüsselauswahl- und Elementauswahlfunktionen.

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

Erstellt eine Lookup<TKey,TElement> aus einer IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion, einem Vergleichsmodul und einer Elementauswahlfunktion.

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

Versucht, die Anzahl der Elemente in einer Sequenz zu ermitteln, ohne eine Enumeration zu erzwingen.

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

Erzeugt die Festgelegte Vereinigung von zwei Sequenzen mithilfe des Standardgleichstellungsabgleichs.

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

Erzeugt die Set-Vereinigung von zwei Sequenzen mithilfe eines angegebenen IEqualityComparer<T>.

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

Erzeugt die Set-Vereinigung von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

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

Erzeugt die Set-Vereinigung von zwei Sequenzen gemäß einer angegebenen Schlüsselmarkierfunktion.

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

Filtert eine Abfolge von Werten basierend auf einem Prädikat.

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

Filtert eine Abfolge von Werten basierend auf einem Prädikat. Der Index jedes Elements wird in der Logik der Prädikatfunktion verwendet.

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

Erzeugt eine Abfolge von Tupeln mit Elementen aus den beiden angegebenen Sequenzen.

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

Erzeugt eine Abfolge von Tupeln mit Elementen aus den drei angegebenen Sequenzen.

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

Wendet eine angegebene Funktion auf die entsprechenden Elemente von zwei Sequenzen an, wodurch eine Folge der Ergebnisse erzeugt wird.

AsParallel(IEnumerable)

Aktiviert die Parallelisierung einer Abfrage.

AsParallel<TSource>(IEnumerable<TSource>)

Aktiviert die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Wandelt eine IEnumerable in eine IQueryableum.

AsQueryable<TElement>(IEnumerable<TElement>)

Wandelt eine generische IEnumerable<T> in eine generische IQueryable<T>um.

Ancestors<T>(IEnumerable<T>)

Gibt eine Auflistung von Elementen zurück, die die Vorgänger aller Knoten in der Quellauflistung enthalten.

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

Gibt eine gefilterte Auflistung von Elementen zurück, die die Vorgänger aller Knoten in der Quellauflistung enthalten. In der Auflistung sind nur Elemente enthalten, die über einen übereinstimmenden XName verfügen.

DescendantNodes<T>(IEnumerable<T>)

Gibt eine Auflistung der untergeordneten Knoten jedes Dokuments und Elements in der Quellauflistung zurück.

Descendants<T>(IEnumerable<T>)

Gibt eine Auflistung von Elementen zurück, die die untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung enthalten.

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

Gibt eine gefilterte Auflistung von Elementen zurück, die die untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung enthalten. In der Auflistung sind nur Elemente enthalten, die über einen übereinstimmenden XName verfügen.

Elements<T>(IEnumerable<T>)

Gibt eine Auflistung der untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung zurück.

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

Gibt eine gefilterte Auflistung der untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung zurück. In der Auflistung sind nur Elemente enthalten, die über einen übereinstimmenden XName verfügen.

InDocumentOrder<T>(IEnumerable<T>)

Gibt eine Auflistung von Knoten zurück, die alle Knoten in der Quellauflistung enthält, sortiert in der Dokumentreihenfolge.

Nodes<T>(IEnumerable<T>)

Gibt eine Auflistung der untergeordneten Knoten jedes Dokuments und Elements in der Quellauflistung zurück.

Remove<T>(IEnumerable<T>)

Entfernt jeden Knoten in der Quellauflistung aus dem übergeordneten Knoten.

Gilt für:

Threadsicherheit

Alle öffentlichen und geschützten Member von ConcurrentStack<T> sind threadsicher und können gleichzeitig aus mehreren Threads verwendet werden.

Weitere Informationen