2008-08-18 8 views
4

Linq Pour cadre SQL ou une entité à la fois intégrer bien avec SQL Server 2005.SQL Server 2008 vs 2005 l'intégration Linq

Les promesses de fiche technique SQL Server 2008, même une meilleure intégration - mais je ne peux pas le voir.

Quels sont quelques exemples de ce que vous pouvez faire Linq-sage lorsque vous parlez à un serveur 2008 que vous ne pouvez pas lorsque vous parlez à SQL Server 2005?

Répondre

0

il a un support complet pour les nouveaux types de données. lol. au-delà de ce que vous m'avez obtenu, à part les possibilités de requêtes optimisées (comme la commande de fusion, etc.).

0

Je devine que la plupart de ceci doit faire sur le serveur de toute façon. Ils ont probablement optimisé l'exécution de la requête en ce qui concerne les différences que je ne connais pas, sauf pour les nouveaux types.

1

Il existe un problème de pagination sur un ensemble joint que SQL 2005 interprète mal.

var orders = (
from c in Customers 
from o in c.Orders 
select new {c, o} 
).Skip(10).Take(10).ToList(); 

LINQ génère un ROW_Number par rapport à l'ensemble joint. SQL2005 génère un mauvais plan à partir de ce code. Voici un lien vers le discussion. Éditer # 2: Je voudrais préciser que je ne sais pas que SQL2008 résout ce problème. Je suis juste plein d'espoir.

+0

Pouvez-vous préciser ce que vous entendez par «mauvais plan? – leppie

1

Cette marketing link revendication

"Ecrire le code d'accès aux données directement sur une base de données Microsoft SQL Server, en utilisant LINQ to SQL."

Ce qui est fondamentalement faux. Linq To SQL est la traduction de requête traduite en arbres d'expression traduits en SQL, optimisés par l'optimiseur de requête, puis exécutés sur la base de données SQL Server. "directement" feh.

0

Sauf si LINQ expose la nouvelle instruction MERGE, non.

Il y a peu de différence efficace dans les moteurs notamment d'une vue ORM/client

Questions connexes