IGrouping<TKey,TElement> IGrouping<TKey,TElement> IGrouping<TKey,TElement> IGrouping<TKey,TElement> Interface

Definition

Stellt eine Auflistung von Objekten dar, die über einen gemeinsamen Schlüssel verfügen.Represents a collection of objects that have a common key.

generic <typename TKey, typename TElement>
public interface class IGrouping : System::Collections::Generic::IEnumerable<TElement>
public interface IGrouping<out TKey,out TElement> : System.Collections.Generic.IEnumerable<out TElement>
type IGrouping<'Key, 'Element> = interface
    interface seq<'Element>
    interface IEnumerable
Public Interface IGrouping(Of Out TKey, Out TElement)
Implements IEnumerable(Of Out TElement)

Typparameter

TKey

Der Typ des Schlüssels von IGrouping<TKey,TElement>.The type of the key of the IGrouping<TKey,TElement>.

TElement

Der Typ der Werte in IGrouping<TKey,TElement>.The type of the values in the IGrouping<TKey,TElement>.

Implementiert

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie mit einem IGrouping<TKey,TElement> -Objekt gearbeitet wird.The following example demonstrates how to work with an IGrouping<TKey,TElement> object.

In diesem Beispiel wird GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) für das Array von MemberInfo -Objekten aufgerufen, das GetMembersvon zurückgegeben wird.In this example, GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) is called on the array of MemberInfo objects returned by GetMembers. GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)gruppiert die Objekte basierend auf dem Wert Ihrer MemberType -Eigenschaft.GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) groups the objects based on the value of their MemberType property. Jeder eindeutige Wert für MemberType im Array von MemberInfo -Objekten wird zu einem Schlüssel für ein IGrouping<TKey,TElement> neues-Objekt, MemberInfo und die-Objekte, die über IGrouping<TKey,TElement> diesen Schlüssel verfügen, bilden die Sequenz der Werte des Objekts.Each unique value for MemberType in the array of MemberInfo objects becomes a key for a new IGrouping<TKey,TElement> object, and the MemberInfo objects that have that key form the IGrouping<TKey,TElement> object's sequence of values.

Zum Schluss wird First die-Methode für die Sequenz von IGrouping<TKey,TElement> -Objekten aufgerufen, um nur IGrouping<TKey,TElement> das erste-Objekt zu erhalten.Finally, the First method is called on the sequence of IGrouping<TKey,TElement> objects to obtain just the first IGrouping<TKey,TElement> object.

Im Beispiel wird dann der Schlüssel des IGrouping<TKey,TElement> -Objekts und die Name -Eigenschaft jedes Werts in der Sequenz von-Werten des IGrouping<TKey,TElement> -Objekts ausgegeben.The example then outputs the key of the IGrouping<TKey,TElement> object and the Name property of each value in the IGrouping<TKey,TElement> object's sequence of values. Beachten Sie, dass Sie IGrouping<TKey,TElement> zum Zugreifen auf die Sequenz von Werten eines Objekts einfach IGrouping<TKey,TElement> die Variable selbst verwenden.Notice that to access an IGrouping<TKey,TElement> object's sequence of values, you simply use the IGrouping<TKey,TElement> variable itself.

// Get an IGrouping object.
IGrouping<System.Reflection.MemberTypes, System.Reflection.MemberInfo> group =
    typeof(String).GetMembers().
    GroupBy(member => member.MemberType).
    First();

// Output the key of the IGrouping, then iterate
// through each value in the sequence of values
// of the IGrouping and output its Name property.
Console.WriteLine("\nValues that have the key '{0}':", group.Key);
foreach (System.Reflection.MemberInfo mi in group)
    Console.WriteLine(mi.Name);

// The output is similar to:

// Values that have the key 'Method':
// get_Chars
// get_Length
// IndexOf
// IndexOfAny
// LastIndexOf
// LastIndexOfAny
// Insert
// Replace
// Replace
// Remove
// Join
// Join
// Equals
// Equals
// Equals
// ...

' Get an IGrouping object.
Dim group As IGrouping(Of System.Reflection.MemberTypes, System.Reflection.MemberInfo) = _
    Type.GetType("String").GetMembers(). _
    GroupBy(Function(ByVal member) member.MemberType). _
    First()

' Output the key of the IGrouping, then iterate
' through each value in the sequence of values
' of the IGrouping and output its Name property.
MsgBox(String.Format("\nValues that have the key '{0}':", group.Key))
For Each mi As System.Reflection.MemberInfo In group
    MsgBox(mi.Name)
Next

' The output is similar to:

' Values that have the key 'Method':
' get_Chars
' get_Length
' IndexOf
' IndexOfAny
' LastIndexOf
' LastIndexOfAny
' Insert
' Replace
' Replace
' Remove
' Join
' Join
' Equals
' Equals
' Equals
' ...

Hinweise

Ein IGrouping<TKey,TElement> ist ein IEnumerable<T> , das zusätzlich über einen Schlüssel verfügt.An IGrouping<TKey,TElement> is an IEnumerable<T> that additionally has a key. Der Schlüssel stellt das Attribut dar, das jedem Wert in der IGrouping<TKey,TElement>gemeinsam ist.The key represents the attribute that is common to each value in the IGrouping<TKey,TElement>.

Der Zugriff auf die IGrouping<TKey,TElement> Werte eines wird sehr stark erreicht, wenn IEnumerable<T> auf die Elemente eines zugegriffen wird.The values of an IGrouping<TKey,TElement> are accessed much as the elements of an IEnumerable<T> are accessed. Beispielsweise können Sie auf die Werte zugreifen, indem Sie foreach eine in C# Visual For Each oder in Visual Basic Schleife zum Durchlaufen des IGrouping<TKey,TElement> -Objekts verwenden.For example, you can access the values by using a foreach in Visual C# or For Each in Visual Basic loop to iterate through the IGrouping<TKey,TElement> object. Der Beispiel Abschnitt enthält ein Codebeispiel, in dem gezeigt wird, wie Sie auf den Schlüssel und die Werte IGrouping<TKey,TElement> eines Objekts zugreifen können.The Example section contains a code example that shows you how to access both the key and the values of an IGrouping<TKey,TElement> object.

Der IGrouping<TKey,TElement> -Typ wird von den GroupBy Methoden des Standard Abfrage Operators verwendet, die eine Sequenz von Elementen des IGrouping<TKey,TElement>Typs zurückgeben.The IGrouping<TKey,TElement> type is used by the GroupBy standard query operator methods, which return a sequence of elements of type IGrouping<TKey,TElement>.

Eigenschaften

Key Key Key Key

Ruft den Schlüssel von IGrouping<TKey,TElement> ab.Gets the key of the IGrouping<TKey,TElement>.

Methoden

GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

Gibt einen Enumerator zurück, der eine Auflistung durchläuft.Returns an enumerator that iterates through a collection.

(Inherited from IEnumerable)

Erweiterungsmethoden

CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>)

Gibt eine DataTable zurück, die Kopien der DataRow-Objekte enthält, wenn ein IEnumerable<T>-Eingabeobjekt vorhanden ist, bei dem der generische Parameter T den Wert DataRow hat.Returns a DataTable that contains copies of the DataRow objects, given an input IEnumerable<T> object where the generic parameter T is DataRow.

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

Kopiert DataRow-Objekte in die angegebene DataTable, bei einem IEnumerable<T>-Eingabeobjekt, bei dem der generische Parameter T den Wert DataRow aufweist.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

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

Kopiert DataRow-Objekte in die angegebene DataTable, bei einem IEnumerable<T>-Eingabeobjekt, bei dem der generische Parameter T den Wert DataRow aufweist.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ umCasts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen TypsFilters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.Converts an IEnumerable to an IQueryable.

Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>)

Gibt eine Auflistung von Elementen zurück, die die übergeordneten Elemente der einzelnen Knoten in der Quellauflistung enthält.Returns a collection of elements that contains the ancestors of every node in the source collection.

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

Gibt eine gefilterte Auflistung von Elementen zurück, die die übergeordneten Elemente der einzelnen Knoten in der Quellauflistung enthält.Returns a filtered collection of elements that contains the ancestors of every node in the source collection. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.Only elements that have a matching XName are included in the collection.

DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>)

Gibt eine Auflistung der Nachfolgerknoten jedes Dokuments und Elements in der Quellauflistung zurück.Returns a collection of the descendant nodes of every document and element in the source collection.

Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>)

Gibt eine Auflistung von Elementen zurück, die die Nachfolgerelemente jedes Elements und Dokuments in der Quellauflistung enthält.Returns a collection of elements that contains the descendant elements of every element and document in the source collection.

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

Gibt eine gefilterte Auflistung von Elementen zurück, die die Nachfolgerelemente jedes Elements und Dokuments in der Quellauflistung enthält.Returns a filtered collection of elements that contains the descendant elements of every element and document in the source collection. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.Only elements that have a matching XName are included in the collection.

Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>)

Gibt eine Auflistung der untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung zurück.Returns a collection of the child elements of every element and document in the source collection.

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

Gibt eine gefilterte Auflistung der untergeordneten Elemente jedes Elements und Dokuments in der Quellauflistung zurück.Returns a filtered collection of the child elements of every element and document in the source collection. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.Only elements that have a matching XName are included in the collection.

InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>)

Gibt eine in Dokumentreihenfolge sortierte Auflistung von Knoten zurück, die alle Knoten in der Quellauflistung enthält.Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.

Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>)

Gibt eine Auflistung der untergeordneten Knoten jedes Dokuments und Elements in der Quellauflistung zurück.Returns a collection of the child nodes of every document and element in the source collection.

Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>)

Entfernt jeden Knoten in der Quellauflistung aus seinem übergeordneten Knoten.Removes every node in the source collection from its parent node.

Gilt für: