IGrouping<TKey,TElement>.Key Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the key of the IGrouping<TKey,TElement>.
public:
property TKey Key { TKey get(); };
public TKey Key { get; }
member this.Key : 'Key
Public ReadOnly Property Key As TKey
Property Value
The key of the IGrouping<TKey,TElement>.
Examples
The following example demonstrates how to use the Key property to label each IGrouping<TKey,TElement> object in a sequence of IGrouping<TKey,TElement> objects. The GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) method is used to obtain a sequence of IGrouping<TKey,TElement> objects. The foreach
in Visual C# or For Each
in Visual Basic loop then iterates through each IGrouping<TKey,TElement> object, outputting its key and the number of values it contains.
// Get a sequence of IGrouping objects.
IEnumerable<IGrouping<System.Reflection.MemberTypes, System.Reflection.MemberInfo>> memberQuery =
typeof(String).GetMembers().
GroupBy(member => member.MemberType);
// Output the key of each IGrouping object and the count of values.
foreach (IGrouping<System.Reflection.MemberTypes, System.Reflection.MemberInfo> group in memberQuery)
Console.WriteLine("(Key) {0} (Member count) {1}", group.Key, group.Count());
// The output is similar to:
// (Key) Method (Member count) 113
// (Key) Constructor (Member count) 8
// (Key) Property (Member count) 2
// (Key) Field (Member count) 1
' Get a sequence of IGrouping objects.
Dim memberQuery As _
IEnumerable(Of IGrouping(Of System.Reflection.MemberTypes, System.Reflection.MemberInfo)) = _
Type.GetType("String").GetMembers(). _
GroupBy(Function(ByVal member) member.MemberType)
' Output the key of each IGrouping object and the count of values.
For Each group As _
IGrouping(Of System.Reflection.MemberTypes, System.Reflection.MemberInfo) In memberQuery
MsgBox(String.Format("(Key) {0} (Member count) {1}", group.Key, group.Count()))
Next
' The output is similar to:
' (Key) Method (Member count) 113
' (Key) Constructor (Member count) 8
' (Key) Property (Member count) 2
' (Key) Field (Member count) 1
Remarks
The key of an IGrouping<TKey,TElement> represents the attribute that is common to each value in the IGrouping<TKey,TElement>.