Entity Framework Core Grundkurs

Daten speichern

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Domänenobjekte können mithilfe des Entity Frameworks komfortabel gespeichert werden. Dazu müssen sie zunächst dem DbSet eines DbContexts hinzugefügt werden. Anschließend wird über die Methode SaveChanges die Änderung in der Datenbank gespeichert.
04:07

Transkript

Eine der Kernaufgaben, wenn nicht die Kernaufgabe des Entity Frameworks, ist es Daten in eine Datenbank zu speichern und daraus wieder zu lesen. Wie wir Daten in einer Datenbank-Tabelle speichern können, das möchte ich ganz gerne in diesem Video zeigen. Ich habe dazu hier in meinem Modell eine Klasse "Fahrer". Hier gibt es also eine Id, hier gibt es Vorname, Nachname, Straße, Postleitzahl, Ort. Es gibt darüber hinaus einen Kontext, wo es einen DbSet zu den Fahrern gibt. Und ich habe auch schon eine Datenbank. Und hier ist die Tabelle "Fahrer" noch leer. In meinem Programm werde ich nun in meiner Startroutine eine weitere Funktion erzeugen, die ich aufrufe, um Daten anzulegen. Diese Methode nenne ich "InsertRecord". Und die gibt es aktuell noch nicht. Also drücke ich hier einmal Strg + Punkt und lasse mir das Ganze von Visual Studio generieren. Nach Aufruf der Methode möchte ich, dass sich mein Programm wieder nicht schließt. Deswegen schreibe ich hier eine "Console.ReadLine" herein. So, doch nun zum eigentlich spannenden. Ich möchte ja einen Eintrag hinzufügen. Dazu gehe ich in die Methode "InsertRecord". Und zunächst brauche ich hier einen DbContext. Dieser DbContext, der implementiert die IDisposable Schnittschritte. Deswegen packe ich die Erzeugung des Kontextes und die Nutzung des Kontextes in einen Using-Block. Ich schreibe also: using(var db = new FahrtenbuchDb). Klasse "FahrtenbuchDb" befindet sich im Namespace "AK.Fahrtenbuch.Models" Der ist hier aktuell nicht bekannt. Deswegen kann ich wieder Strg + Punkt drücken, um das Ganze zu importieren, diesen Namensraum. Ja, innerhalb der Lebensdauer meines Kontextes, erzeuge ich nun einen neuen Fahrer. Ich sage also: var fahrer = new Fahrer() und setze hier alle Eigenschaften, außer der Id. Also, fahrer.Vorname = "Andre" fahrer.Nachname = "Krämer" fahrer.Strasse = ...diese hier und fahrer.Plz = "53498" und fahrer.Ort = "Bad Breisig" Ich habe nun alle relevanten Felder zu meinem Fahrer gesetzt. Und jetzt möchte ich diesen Fahrer gerne in der Datenbank speichern. Dazu sind jetzt zwei Dinge notwendig. Zum einen muss ich dem DbSet "Fahrer", also der Eigenschaft an meinem DbContext... Ich drücke mal Alt + F12, das war jetzt diese hier. Der muss ich nun über die Methode "Add" diesen neuen Fahrer hinzufügen. Jetzt ist der Fahrer allerdings noch nicht in der Datenbank gespeichert. Sondern er wird nur durch den Kontext überwacht. Der Change Trigger des DbContext weißt nun, dass dieser Datensatz im Zustand hinzugefügt ist. Zum tatsächlichen Speichern muss ich am Kontext die Methode "SaveChanges", oder die asynchrone Variante "SaveChangesAsync" aufrufen. Das reicht jetzt allerdings schon aus, um einen Fahrer über das Programm in die Datenbank einzufügen. Dazu starte ich mein Programm ganz kurz. Und hier haben wir es. Drücke einmal Enter, damit es sich beendet. Und wenn ich jetzt zurück in meine "Fahrer"-Tabelle gehe, dann sehen wir immer noch nichts. Aber das liegt daran, dass ich die Ansicht natürlich zunächst aktualisieren muss. Und hier ist mein neuer Fahrer. Wie wir sehen, wurde die Id automatisch vergeben. Und die restlichen Informationen, das sind die, die ich zuvor eingetragen habe.

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!