Today I was writing a Linq query in which I wanted to applying grouping to query based on more than 1 column and also apply filter on the group more like having clause. After some playing I figured it out. Here is a simple demonstration of grouping by more than 1 column using customer table from NorthWind database.
The output of the query is as follows.
Important point that is worth mentioning in the query is the introduction of the new anonymous type. If you want to group by more than 1 property you have to create an anonymous type and specify the properties in there. Any where clause which is followed after grouping are basically converted to having clause that filter the groups. The query above basically displays groups which have more than 1 contacts for a particular city and contact title.