How can I get all elements in a group using LINQ GroupBy?

The GroupBy method in LINQ allows you to group a collection by a specified key, and then you can iterate through the groups to access all elements within each group.

Here is a sample code demonstrating how to use the LINQ GroupBy method to retrieve all elements in a group:

class Program
{
    static void Main(string[] args)
    {
        List<Person> people = new List<Person>
        {
            new Person { Name = "Alice", Age = 25 },
            new Person { Name = "Bob", Age = 30 },
            new Person { Name = "Alice", Age = 35 },
            new Person { Name = "Bob", Age = 40 },
            new Person { Name = "Charlie", Age = 45 }
        };

        var groups = people.GroupBy(p => p.Name);

        foreach (var group in groups)
        {
            Console.WriteLine("Group: " + group.Key);

            foreach (var person in group)
            {
                Console.WriteLine("   " + person.Name + ", " + person.Age);
            }
        }
    }
}

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

In the example above, we grouped the personnel collection by name, and then looped through each group using a foreach loop to access all elements in each group.

bannerAds