Referring to this question - Using Linq to group a list of objects into a new grouped list of list of objects.
Here is the input:
List<User> userList = new List<User>();
userList.Add( new User { UserID = 1, UserName = "UserOne", GroupID = 1 } );
userList.Add( new User { UserID = 2, UserName = "UserTwo", GroupID = 1 } );
userList.Add( new User { UserID = 3, UserName = "UserThree", GroupID = 2 } );
userList.Add( new User { UserID = 4, UserName = "UserFour", GroupID = 1 } );
userList.Add( new User { UserID = 5, UserName = "UserFive", GroupID = 3 } );
userList.Add( new User { UserID = 6, UserName = "UserSix", GroupID = 3 } );
I want to have the result to be in this format :
GroupedUserList
GroupID UserIdList UsersList
1 , [1,2,4], ["User1", "UserTwo", "UserFour"]
2 , [3], ["UserThree"]
3 , [5,6], ["UserFive", "UserSix"]
What would be the linq query?