Esto es bastante simple, pero estoy en una pérdida: Teniendo en cuenta este tipo de conjunto de datos:LINQ con GroupBy y contar
UserInfo(name, metric, day, other_metric)
y este conjunto de datos de ejemplo:
joe 1 01/01/2011 5
jane 0 01/02/2011 9
john 2 01/03/2011 0
jim 3 01/04/2011 1
jean 1 01/05/2011 3
jill 2 01/06/2011 5
jeb 0 01/07/2011 3
jenn 0 01/08/2011 7
I' Me gusta recuperar una tabla que enumera las medidas en orden (0,1,2,3 ..) con el número total de veces que se produce el recuento. Así que a partir de este conjunto que terminarías con:
0 3
1 2
2 2
3 1
estoy luchando con la sintaxis de LINQ, pero estoy atascado en donde poner un GroupBy y contar .... cualquier ayuda ??
POST Editar: Nunca pude obtener las respuestas publicadas para trabajar, ya que siempre devolvieron un registro con el número de cuentas diferentes. Sin embargo, era capaz de armar un ejemplo LINQ a SQL que hizo el trabajo:
var pl = from r in info
orderby r.metric
group r by r.metric into grp
select new { key = grp.Key, cnt = grp.Count()};
Este resultado me dio un conjunto ordenado de registros con 'indicadores' y el número de usuarios asociados con cada uno. Soy claramente nuevo en LINQ en general y para mi ojo no entrenado este enfoque parece muy similar al enfoque puro de LINQ pero me dio una respuesta diferente.
Sí, lo tengo, pero la explicación de jimmy me ayudó más aún. Sin embargo, nunca pude poner su ejemplo a trabajar, pero sí me condujo en una nueva dirección. – Gio