Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Entity Framework Core Grundkurs

Abfrageergebnisse mit Where einschränken

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Daten lassen sich mit der Hilfe des Where-Schlüsselworts nicht nur unter SQL, sondern auch unter Linq einschränken.
02:41

Transkript

Der Quellcode, den Sie hier vor sich sehen, selektiert in der Zeile 31 alle Fahrten aus der Datenbank und gibt sie anschließend in einer foreach-Schleife auf der Konsole aus. Wenn wir uns das Ganze einmal anschauen, dann sehen wir, dass also hier zunächst ein SQL Statement ausgeführt wird, dass tatsächlich alle Felder der Fahrten-Tabelle selektiert und anschließend wird nach und nach jede Fahrt einzeln ausgegeben. Was ist aber, wenn ich gar nicht alle Fahrten ausgeben möchte, weil ich zum Beispiel die privaten Fahrten nicht dabei haben möchte? Eben dann macht es Sinn, wenn wir an dieser Stelle hingehen und das Ganze über eine "Where"-Bedingung einschränken. Und dazu gehe ich wie folgt vor. An meinem DbSet habe ich die Möglichkeit die Methode "Where" aufzurufen. Das ist eine Extension Method, die aus dem Namespace System Link kommt. Und an diese Methode "Where" übergebe ich nun einen Lambda-Ausdruck. Heißt also so etwas wie x.Fahrttyp = Fahrttyp.Geschaeftlich Über diese Einschränkung hier werde ich gleich einen Select Statement generieren, was tatsächlich nur die geschäftlichen Fahrten listet. Schauen wir uns das Ganze einmal an. Wir sehen hier schon, keine Privatfahrten mehr dazwischen. Und wenn ich nun einmal hochscrolle, dann sehen wir, dass hier der Fahrttyp eingeschränkt worden ist. Natürlich kann ich solche Where Statements auch verknüpfen, zum Beispiel indem ich sage: Where Fahrttyp = Geschaeftlich Und x.Fahrtziel.StartsWith und zwar möchte ich nur die Fahrten haben, die mit dem String "Kundenstrasse" starten. Ich kann an dieser Stelle auch einmal umbrechen. Dann ist das Ganze etwas besser lesbar. Und wenn ich jetzt mein Programm ausführe, dann bekommen wir nur die geschäftlichen Fahrten, die in die Kundenstrasse gegangen sind. Und das Ganze sehen wir hier sehr schön. Bedeutet also, um ein Statement, wie dieses hier, wo also in der "Where"-Bedingung zwei Bedingungen abgeprüft werden, zu erzeugen, müssen wir an unserem DbSet die Extension Method "Where" aus System Link aufrufen. Und hier übergeben wir über einen Lambda-Ausdruck die entsprechende Einschränkung, nach der gesucht werden soll.

Entity Framework Core Grundkurs

Lernen Sie die Features von Microsofts O/R-Mapper kennen und wie Sie ihn in praktischen Anwendungen einsetzen.

2 Std. 29 min (29 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!