Что должен знать Senior .NET-разработчик про IEnumerable vs IQueryable?

C# / .NETГлубокие trade-offs, диагностика, архитектурный контекст и влияние на систему.Collections, Generics and LINQТеорияcsharpdotnetcollections-generics-and-linqlinqienumerable-vs-iqueryable

Что хотят услышать интервьюеры:

Senior-разработчик должен объяснить IEnumerable vs IQueryable через trade-offs, диагностику, границы применения и влияние на архитектуру.

  • Суть: IEnumerable работает с последовательностью в памяти, IQueryable строит expression tree для провайдера, например EF Core.
  • Где встречается: обработка списков, фильтрация, группировка, построение запросов и работа с EF Core.
  • Типичная ошибка: материализовать данные слишком рано, путать IEnumerable/IQueryable или игнорировать сложность операций.
  • Как отвечать: начните с короткого определения, затем приведите пример, назовите ограничение и типичную ошибку.
  • Ожидаемый уровень: Senior. Глубокие trade-offs, диагностика, архитектурный контекст и влияние на систему.

Ответ:

var activeUsers = users.Where(u => u.IsActive).Select(u => u.Email).ToList();

Источники

Похожие вопросы