Из блога ADO.NET :
Настройка запросов - добавлена поддержка существующих операторов LINQ,
распознавая больший набор шаблонов
с LINQ, определение модели записи
функции наряду со способностью
использовать их в LINQ, и ряд
другие способы создания и настройки
запросы.
Улучшения читаемости SQL Generation - Улучшение
удобочитаемость наряду с TSQL
оптимизация производительности, из
сгенерированные запросы, чтобы сделать это много
проще понять что происходит
Таким образом, эти два момента означают, что вы могли видеть улучшения в том, как он генерирует ваш запрос из LINQ.
Однако маловероятно, что ORM когда-либо сможет выполнить запрос, который вы написали с нуля, так как он обслуживает так много разных сценариев, и, как правило, по умолчанию используется самый распространенный. Казалось, что EF 3.5 производил очень эффективный SQL для объединения, когда я его использовал, вероятно, лучшее, что я видел в ORM, так что есть надежда, что вы можете отказаться от SP в 4.0.
Если у вас есть хранимая процедура, я предполагаю, что это большой запрос - отправка этого SQL-текста каждый раз на сервер вызовет большой сетевой трафик, и это еще одна вещь, которую вы могли или не могли учитывать. Очевидно, что на том же сервере или в той же внутренней сети это оптимизация стиля «подстригись, чтобы похудеть».