Вопросы с собеседований по C# и ответы на них.
По рекламе: @tproger_sales_bot
Учиться у нас: https://clc.to/QRJIVw
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
Post #529
2.47K
Какова разница между IEnumerable и IQueryable при работе с удаленной базой данных?
IEnumerable представляет собой коллекцию данных, находящуюся в памяти, и позволяет перемещаться по этим данным только в одном направлении — вперед. В отличие от него, IQueryable находится в пространстве имен System.Linq и предоставляет возможность удаленного доступа к базе данных. Он позволяет перемещаться по данным как в прямом, так и в обратном порядке. При выполнении запроса происходит его оптимизация, что делает работу с данными более эффективной.
IEnumerable представляет собой коллекцию данных, находящуюся в памяти, и позволяет перемещаться по этим данным только в одном направлении — вперед. В отличие от него, IQueryable находится в пространстве имен System.Linq и предоставляет возможность удаленного доступа к базе данных. Он позволяет перемещаться по данным как в прямом, так и в обратном порядке. При выполнении запроса происходит его оптимизация, что делает работу с данными более эффективной.
IEnumerable phoneIEnum = db.Phones;var phones1 = phoneIEnum.Where(p => p.Id > id).ToList(); //SELECT * FROM PHONES, фильтрация на стороне клиентаIQueryable phoneIQuer = db.Phones;int id = 3;var phones2 = phoneIQuer.Where(p => p.Id > id).ToList(); //SELECT * FROM PHONES WHERE ID > 3- 👍 4




