Descarga de una colección anidada

votos
2

¿Cómo consigo un objeto de contexto con una colección anidada como una lista de ID?

Quiero conseguir un objeto plano que contiene una lista de los ID de usuario.

public IEnumerable<Flat> GetAll()
{
    return _context.Flats
        .Include(flat => flat.Users.Select(x => x.Id));
}

El error devuelto:

The property expression 'flat => {from User x in flat.Users select [x].Id}' is not valid. The expression should represent a property access: 't => t.MyProperty'.

Publicado el 19/09/2018 a las 13:34
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
5

Esto debería ser una forma de hacerlo:

public IEnumerable<dynamic> GetAll()
{
    return _context.Flats
        .Include(flat => flat.Users)
        .Select(flat => new { Flat = flat, UserIds = flat.Users.Select(u => u.Id) });
}

Aunque es probable que desee definir un nuevo tipo de retorno.

Respondida el 19/09/2018 a las 13:56
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more