2011-05-31 21 views
5

mi objeto contiene una colección de colecciones. me gusta obtener todos los identificadores de objetos secundarios y almacenarlos en una matriz de cadenas.LInq que consulta la colección dentro de la colección

MainObject contiene Lista de los padres

Padres contiene Lista de Niño

propiedades secundarias son (Id, Nombre)

¿Cómo puedo consultar MainObject y encontrar todos los identificadores de los niños y almacenarlo en la matriz de cadenas usando linq?

Respuesta

11

Puede utilizar SelectMany:

var stringArray = MainObject.ListOfParent 
          .SelectMany(p => p.ListOfChildren 
               .Select(c => c.Id.ToString())) 
          .ToArray() 
+0

Gracias a todos ..se está trabajando ahora clave es usar seleccionar muchos – Bumble

3
var arrayOfIds = MainObject.ListOfParents 
          .SelectMany(x => x.ListOfChildren) 
          .Select(x => x.Id) 
          .ToArray(); 
+0

Gracias a todos ..se está trabajando ahora clave está usando seleccionar muchos. – Bumble

4

probar este

var id =parents.SelectMany(p => p.Children).Select(x => x.Id).ToArray(); 
Cuestiones relacionadas