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?
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. :)
Tags und Links c# entity-framework linq asp.net