Linq по сравнению с SQL-запросом всегда снижает производительность. Запрос Linq при запуске в базе данных сначала преобразуется в оператор sql, а затем выполняется. Вы можете легко проанализировать это в следующем примере.
Предположим, что вы хотите удалить некоторые записи из базы данных, и вы используете запрос linq.
запрос будет
var del = from record in stud
where record.college=="ABC"
select record;
stud.deleteAllonSublit(del);
Как только начинается выполнение запроса, сначала запускается запрос на выборку, а затем в зависимости от количества записей в таблице запускается много запросов на удаление. Предположим, что есть 10 записей, содержащих название колледжа как «ABC», а затем запущено 10 запросов на удаление;
Вместо этого, если мы используем SQL-запрос, мы можем напрямую написать следующий запрос
delete from stud where college="ABC";
И все 10 записей будут удалены в одном SQL-запросе.