Существует проблема разбивки страниц по объединенному набору, которая неверно интерпретирует SQL 2005.
var orders = (
from c in Customers
from o in c.Orders
select new {c, o}
).Skip(10).Take(10).ToList();
LINQ генерирует ROW_Number для объединенного набора. SQL2005 генерирует плохой план из этого кода. Вот ссылка на обсуждение .
Редактировать # 2: Я хотел бы уточнить, что я не знаю, что SQL2008 решает эту проблему. Я просто надеюсь.