IGrouping<TKey,TElement> Interface

Définition

Représente une collection d'objets qui ont une clé commune.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)

Paramètres de type

TKey

Type de la clé de IGrouping<TKey,TElement>.The type of the key of the IGrouping<TKey,TElement>.

TElement

Type des valeurs de IGrouping<TKey,TElement>.The type of the values in the IGrouping<TKey,TElement>.

Implémente

Exemples

L’exemple suivant montre comment utiliser un IGrouping<TKey,TElement> objet.The following example demonstrates how to work with an IGrouping<TKey,TElement> object.

Dans cet exemple, GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) est appelé sur le tableau d' MemberInfo objets retourné par GetMembers.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>)regroupe les objets en fonction de la valeur MemberType de leur propriété.GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) groups the objects based on the value of their MemberType property. Chaque valeur unique pour MemberType dans le tableau d' MemberInfo objets devient une clé pour un nouvel IGrouping<TKey,TElement> objet, et les MemberInfo objets qui ont cette clé forment la IGrouping<TKey,TElement> séquence de valeurs de l’objet.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.

Enfin, la First méthode est appelée sur la séquence d' IGrouping<TKey,TElement> objets pour obtenir uniquement le premier IGrouping<TKey,TElement> objet.Finally, the First method is called on the sequence of IGrouping<TKey,TElement> objects to obtain just the first IGrouping<TKey,TElement> object.

L’exemple génère ensuite la clé de l' IGrouping<TKey,TElement> objet et la Name propriété de chaque valeur dans la IGrouping<TKey,TElement> séquence de valeurs de l’objet.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. Notez que pour accéder à IGrouping<TKey,TElement> la séquence de valeurs d’un objet, il vous IGrouping<TKey,TElement> suffit d’utiliser la variable elle-même.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
' ...

Remarques

Un IGrouping<TKey,TElement> est un IEnumerable<T> qui a en outre une clé.An IGrouping<TKey,TElement> is an IEnumerable<T> that additionally has a key. La clé représente l’attribut qui est commun à chaque valeur dans le IGrouping<TKey,TElement>.The key represents the attribute that is common to each value in the IGrouping<TKey,TElement>.

Les valeurs d’un IGrouping<TKey,TElement> sont accessibles de la même façon que les IEnumerable<T> éléments d’un.The values of an IGrouping<TKey,TElement> are accessed much as the elements of an IEnumerable<T> are accessed. Par exemple, vous pouvez accéder aux valeurs à l’aide foreach d’une C# boucle For Each in Visual ou in Visual Basic pour itérer IGrouping<TKey,TElement> au sein de l’objet.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. La section exemple contient un exemple de code qui montre comment accéder à la fois à la clé et aux valeurs IGrouping<TKey,TElement> d’un objet.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.

Le IGrouping<TKey,TElement> type est utilisé par les GroupBy méthodes d’opérateur de requête standard, qui retournent une séquence IGrouping<TKey,TElement>d’éléments de type.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>.

Propriétés

Key

Obtient la clé de IGrouping<TKey,TElement>.Gets the key of the IGrouping<TKey,TElement>.

Méthodes

GetEnumerator()

Retourne un énumérateur qui itère au sein d’une collection.Returns an enumerator that iterates through a collection.

(Hérité de IEnumerable)

Méthodes d’extension

CopyToDataTable<T>(IEnumerable<T>)

Retourne un DataTable qui contient des copies des objets DataRow, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique T est DataRow.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)

Copie les objets DataRow vers le DataTable spécifié, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique T est DataRow.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)

Copie les objets DataRow vers le DataTable spécifié, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique T est DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Ancestors<T>(IEnumerable<T>)

Retourne une collection d'éléments qui contient les ancêtres de chaque nœud de la collection source.Returns a collection of elements that contains the ancestors of every node in the source collection.

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

Retourne une collection d'éléments filtrée qui contient les ancêtres de chaque nœud de la collection source.Returns a filtered collection of elements that contains the ancestors of every node in the source collection. Seuls les éléments avec un XName correspondant sont inclus dans la collection.Only elements that have a matching XName are included in the collection.

DescendantNodes<T>(IEnumerable<T>)

Retourne une collection des nœuds descendants de chaque document et élément de la collection source.Returns a collection of the descendant nodes of every document and element in the source collection.

Descendants<T>(IEnumerable<T>)

Retourne une collection d'éléments qui contient les éléments descendants de tous les éléments et tous les documents de la collection source.Returns a collection of elements that contains the descendant elements of every element and document in the source collection.

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

Retourne une collection d'éléments filtrée qui contient les éléments descendants de tous les éléments et tous les documents de la collection source.Returns a filtered collection of elements that contains the descendant elements of every element and document in the source collection. Seuls les éléments avec un XName correspondant sont inclus dans la collection.Only elements that have a matching XName are included in the collection.

Elements<T>(IEnumerable<T>)

Retourne une collection des éléments enfants de chaque élément et document de la collection source.Returns a collection of the child elements of every element and document in the source collection.

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

Retourne une collection filtrée des éléments enfants de chaque élément et document de la collection source.Returns a filtered collection of the child elements of every element and document in the source collection. Seuls les éléments avec un XName correspondant sont inclus dans la collection.Only elements that have a matching XName are included in the collection.

InDocumentOrder<T>(IEnumerable<T>)

Retourne une collection de nœuds qui contient tous les nœuds de la collection source, triés selon l'ordre des documents.Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.

Nodes<T>(IEnumerable<T>)

Retourne une collection des nœuds enfants de chaque document et élément de la collection source.Returns a collection of the child nodes of every document and element in the source collection.

Remove<T>(IEnumerable<T>)

Supprime chaque nœud de la collection source de son nœud parent.Removes every node in the source collection from its parent node.

S’applique à