Baixando uma coleção aninhada

votos
2

Como faço para obter um objeto de contexto com uma coleção aninhada como uma lista de id?

Eu quero pegar um objeto plano que contém uma lista de IDs de usuário.

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

O erro:

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 19/09/2018 em 13:34
fonte usuário
Em outras línguas...                            


1 respostas

votos
5

Esta deve ser uma maneira de fazê-lo:

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

Embora você provavelmente vai querer definir um novo tipo de voltar.

Respondeu 19/09/2018 em 13:56
fonte usuário

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