Загрузка вложенной коллекции

голоса
2

Как получить объект из контекста с вложенной коллекцией как список идентификаторов?

Я хочу, чтобы получить плоский объект, содержащий список идентификаторов пользователей.

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

Обнаружена ошибка:

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'.

Задан 19/09/2018 в 13:34
источник пользователем
На других языках...                            


1 ответов

голоса
5

Это должно быть одним из способов сделать это:

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

Хотя вы, вероятно, хотите, чтобы определить новый тип вернуться.

Ответил 19/09/2018 в 13:56
источник пользователем

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