Интеграция SQL Server 2008 и 2005 Linq

Linq To SQL или Entity Framework хорошо интегрируются с SQL Server 2005.

Спецификация SQL Server 2008 обещает еще лучшую интеграцию - но я не вижу этого.

Какие примеры того, что вы можете сделать с помощью Linq при общении с сервером 2008 года, чего нельзя делать при общении с SQL Server 2005?

18.08.2008 23:50:25
5 ОТВЕТОВ

он имеет полную поддержку новых типов данных. лол. кроме того, что вы получили меня, кроме возможностей оптимизированных запросов (таких как команда слияния и т. д.).

0
19.08.2008 00:30:57

Я предполагаю, что большая часть этого должна делать на сервере в любом случае. Вероятно, они оптимизировали выполнение запроса, что касается различий, которые я не знаю, за исключением новых типов.

0
19.08.2008 00:45:58

Существует проблема разбивки страниц по объединенному набору, которая неверно интерпретирует 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 решает эту проблему. Я просто надеюсь.

1
30.09.2008 14:57:13
Можете ли вы уточнить, что вы подразумеваете под «плохим планом»?
leppie 30.09.2008 14:27:40

Эта маркетинговая ссылка утверждает

«Напишите код доступа к данным непосредственно к базе данных Microsoft SQL Server, используя LINQ to SQL».

Что в принципе не соответствует действительности.

Linq To SQL - это понимание запросов, преобразованное в деревья выражений, переведенные в SQL, оптимизированные оптимизатором запросов и затем запущенные для базы данных SQL Server. "напрямую" фе.

1
30.09.2008 14:53:57

Если LINQ не раскрывает новый оператор MERGE, нет.

Существует небольшая эффективная разница в двигателях, особенно с точки зрения ORM / клиента

0
6.09.2010 18:14:32