Я сравниваю EF и введенные наборы данных для их полноценности. Мне не удавалось видеть, почему Вы будете использовать EF по введенным наборам данных, если EF будет связан с SQL Server только. Но это верный, что операторы Linq в EF оценены поздно в уважении это, если Вы сделали что-то как:
db.Customers.where(c => c.Name == "John Smith")
EF создал бы запрос как:
select * from Customers where Name = 'John smith'
Но с Введенными наборами данных Вы могли записать:
bll.GetCustomers().where(c => c.Name == "John Smith")
Который очень похож, но различие, оно сначала работает:
select * from Customers
И затем пользование стандартной библиотекой наборов находит строки, которые содержат Имя: "John Smith". В теории, означающей EF, будет более эффективным.
Это корректно?