Ответ 1
Использовать тот же анонимный тип в точечной нотации, которую вы выполняете в выражении запроса:
var qry = cust.GroupBy(cm => new { cm.Customer, cm.OrderDate },
(key, group) => new { Key1 = key.Customer, Key2 = key.OrderDate,
Count = group.Count() });
(В реальной IDE у меня бы (key, group)
выровнялся под параметром cm
, но потом он был бы завернут в SO.)