Tengo una consulta LINQ que regresa IEnumerable<List<int>>
pero quiero regresar solo, List<int>
así que quiero fusionar todos mis registros en mi IEnumerable<List<int>>
solo una matriz.
Ejemplo:
IEnumerable<List<int>> iList = from number in
(from no in Method() select no) select number;
Quiero llevar todo mi resultado IEnumerable<List<int>>
a solo unoList<int>
Por lo tanto, de las matrices de origen: [1,2,3,4] y [5,6,7]
Solo quiero una matriz [1,2,3,4,5,6,7]
Gracias
SelectMany( i => i )
? He visto que esta sintaxis se usa mucho, pero parece un uso degenerado de la función de selección, por lo que hubiera esperado que los diseñadores de idiomas presentaran una sintaxis de acceso directo específicamente para listas de listasCon sintaxis de consulta:
fuente
fuente
.ToArray()
? - Eso es algo circunstancial, si solo necesita iterar una vez, o si es probable que los elementos cambien, entonces.ToArray()
definitivamente no es lo que desea. Pero con los elementos estáticos que vas a enumerar varias veces,.ToList()
o.ToArray()
darás una mejora en el rendimiento (a costa de un uso de memoria ligeramente mayor, que generalmente es un buen negocio).List<int>
, por.ToList()
lo que sería la opción correcta.¿Me gusta esto?
fuente
Si tienes una
List<List<int>> k
puedes hacerfuente