2009-09-18 7 views

Antwort

9

In einigen Fällen Sie die SQL besser als LINQ to SQL ... aber LINQ Lage sein kann, stimmen wirklich ist mit SQL. Es holt nicht alle Daten in den Prozess und dann die Verarbeitung. Sie können (und sollten) protokollieren, was SQL generiert, und alles profilieren, was verdächtig erscheint.

Natürlich gibt es den Overhead der Umwandlung der Abfrage in SQL zu beginnen (weshalb Sie sie vorkompilieren können) und dann gibt es den Overhead der Konvertierung der Daten in Objekte - und die IDs usw. zu verfolgen Nach meiner Erfahrung ist dies in der Regel kein signifikanter Overhead. Wie immer profiliere deinen Code ...

+3

Wenn etwas über die DB-Preformance aussieht, starte den sql-Profiler und schaue die Ausführungszeiten der Abfragen an. Wenn Abfragen sehr langsam sind, sollten Sie Methoden zum chaning dieser Abfrage untersuchen. – AndreasN

+1

Wenn Sie nur wissen möchten, was SQL im Hintergrund produziert, hat Linqpad (http://www.linqpad.net/) eine sehr nette Funktion, bei der Sie beim Ausführen einer linq-Abfrage nicht nur die Ergebnisse anzeigen , aber auch die SQL-Befehle, die ausgeführt wurden. – sgmoore

Verwandte Themen