2011-05-19 19 views
5

He visto ejemplos de grupos de multiplicación por columnas, pero para las clases. Estoy tratando de hacer esto para un EnumerableDataRowList. pero obtengo el "Declarador de miembro de tipo anónimo inválido".Agrupar por columnas múltiples - LINQ

    EnumerableDataRowList<DataRow> enumerableRowCollection = new EnumerableDataRowList<DataRow>(reportData.Select("WeekKey <> '0'")); 


       var groupedRows1 = from row in enumerableRowCollection 
            group row by new {row["NETWORK"], row["Week"] }; 

también, he visto que algunas personas combinan las columnas en algún caso para obtener los mismos resultados. Cualquier beneficio de hacerlo de esa manera

Respuesta

12

tiene que asignar un identificador a los valores:

  var groupedRows1 = from row in enumerableRowCollection 
          group row by new { Network = row["NETWORK"], Week = row["Week"] }; 

Normalmente, no es necesario especificar un identificador si está utilizando una referencia de campo o propiedad, ya que Reutilizaremos el nombre de ese miembro, pero en este caso está accediendo a una propiedad del indexador, por lo que no hay forma de obtener un nombre.

+0

Eso fue rápido Dan. ¡¡gracias por tu ayuda!! – H20rider

Cuestiones relacionadas