Mit der Veröffentlichung von .NET v3.5 SP1 (zusammen mit VS2008 SP1) haben wir nun Zugriff auf das .NET Entity Framework.
Meine Frage ist folgende. Wenn Sie versuchen, zwischen der Verwendung des Entity Framework und LINQ to SQL als ORM zu entscheiden, was ist der Unterschied?
So wie ich es verstehe, ist das Entity Framework (wenn es mit LINQ to Entities verwendet wird) ein "großer Bruder" von LINQ to SQL? Wenn das der Fall ist - welche Vorteile hat es dann? Was kann es leisten, was LINQ to SQL allein nicht leisten kann?
145 Stimmen
Ich denke, dass die folgenden Antworten noch einmal überdacht werden sollten, da es schon lange her ist, dass EF veröffentlicht wurde, so dass neue Entwickler, die hierher kommen, einen falschen Eindruck bekommen können. EF ist seit seiner frühen Veröffentlichung ein GROSSARTIGES und EINFACHES Werkzeug geworden. Man muss nur die Verbindung zur DB einrichten und das ist zu 90% alles, was man braucht. Sehr schnelle Entwicklung, von einem erfahrenen Standpunkt aus gesehen! Von dort aus ist LINQ Ihr bester Freund. Es ist in hohem Maße anpassbar, MVC lieben es, und die Leute, die sagen, es ist schlecht - Lernen Sie, wie man es zuerst verwenden (und halten Sie auf LINQ als gut)!
11 Stimmen
Nur damit es klar ist - es ist nicht so, dass Sie jetzt die Wahl haben - MSFT hat LINQ2SQL zugunsten von EF effektiv abgeschafft. Allerdings hat die Tatsache, dass MSFT EF als Open Source zur Verfügung stellt, dazu beigetragen, dass es weniger schlecht ist und definitiv besser wird. Aber für alle, die sich für EF interessieren, sei gesagt, dass es immer noch eine Menge Macken in EF gibt. Ich habe über eine gepostet - stackoverflow.com/questions/305092/
5 Stimmen
@kape123, (a) LINQ to SQL ist nicht "tot"; es ist immer noch verwendbar; (b) LINQ to SQL ist die Standardmethode für den Datenzugriff bei der Entwicklung von Windows Phone 8.
1 Stimmen
@Kyralessa Ich habe gerade diesen Thread ausgegraben. LINQ to SQL ist "tot" wie in, ist nicht offiziell von Microsoft unterstützt.
10 Stimmen
@user3308043, [Quellenangabe erforderlich].
4 Stimmen
@Kyralessa - Ab 2010 (mit der Veröffentlichung von .NET4.0, das letzte Zitat, das ich finden konnte), Die MS bestätigten, dass Während einige Investitionen in LINQ2SQL getätigt werden können, "wird der Großteil unserer Gesamtinvestitionen in das Entity Framework fließen."
3 Stimmen
@HameedSyed, das ist nicht wahr, es ist Dapper Es wurde sogar von SO (Sam Saffro) entwickelt.
0 Stimmen
Der einzige Unterschied, der heute zählt, ist: LINQ-to-SQL ist tot, EF lebt und ist quicklebendig.