Abrufen einzelner Entity Framework-Entitäten mithilfe einer LINQ-Abfrage oder GetObjectKey?

8

Es sieht so aus, als ob GetObjectKey den Vorteil hat, nach vorhandenen, instanziierten Objekten und DANN nach dem Datenspeicher zu suchen. Es scheint jedoch so, als ob Sie etwas von der starken Typisierung verlieren und das resultierende Objekt umwandeln müssen:

GetObjectKey

%Vor%

vs. LINQ

%Vor%

Persönlich bevorzuge ich die letztere Methode wegen der Typisierung. Außerdem wird Ihre DAL ziemlich einheitlich sein, wobei alle Get-Methoden Abfragen sind, obwohl dies nur eine persönliche Präferenz ist.

Was benutzen Sie Jungs und Mädchen?

    
John Bubriski 26.06.2009, 15:44
quelle

2 Antworten

9

Ich bevorzuge das letztere, weil es ausdrücklich klar ist, was Sie wollen. Durch die Verwendung von EntityKey (und das scheint das ADO.NET-Team nicht zu verstehen) müssen wir die von Entity Framework auferlegte Struktur umgehen. Indem wir die Abfragesprache wie im zweiten Beispiel verwenden, sagen wir allen anderen Entwicklern, die sich jemals unseren Code ansehen werden, hey, wir wollen nur dieses Objekt mit dieser ID oder wir wollen null.

Ich glaube nicht, dass es richtig ist, wenn Sie richtig sind (wie Sie es auch im ersten Beispiel sind), um Ihren Kollegen nicht klar zu sein. :)

    
Rob 26.06.2009, 16:50
quelle
1

In meiner Lösung verwende ich generische Programmierung. In der Basis-Repository-Klasse habe ich Code wie folgt:

%Vor%     
finlay 13.05.2010 00:52
quelle

Tags und Links