Windows Dev Center

IGrouping<TKey, TElement>.Key Property

Gets the key of the IGrouping<TKey, TElement>.

Namespace:  System.Linq
Assemblies:   System.Linq (in System.Linq.dll)
  System.Core (in System.Core.dll)

TKey Key { get; }

Property Value

Type: TKey
The key of the IGrouping<TKey, TElement>.

The key of an IGrouping<TKey, TElement> represents the attribute that is common to each value in the IGrouping<TKey, TElement>.

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

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8

Portable Class Library

Supported in: Portable Class Library
Show:
© 2015 Microsoft