Schulung Entity Framework Core 6.0/7.0/8.0 (EF Core 6.0/7.0/8.0): Objekt-Relationales Mapping (ORM) für .NET 6.0/7.0/8.0 (komplettes Wissen)

Beschreibung/Inhalt

- Dieses Schulungsmodul kann mit allen aktuellen Entity Framework Core-Versionen (z.B. 8.0, 7.0, 6.0, 5.0) entsprechend Ihren Wünschen durchgeführt werden.
- Bei den Zieldatenbanken können Sie wählen zwischen Microsoft SQL Server, SQL Azure, SQLite, MySQL, PostgreSQL, Oracle oder Cosmos DB (andere auf Anfrage)
- Auf expliziten Wunsch könnte auch eine ältere Version von Entity Framework Core geschult werden

Optional

  • Das Grundkonzept des Objekt-Relationales-Mappings (ORM)
  • Vergleich zwischen Entity Framework Core und ADO.NET Entity Framework


  • Einführung
  • Einsatzgebiete von Entity Framework Core
  • Bausteine von Entity Framework Core
  • Betrieb auf dem klassischen .NET Framework und .NET Core
  • Architektur von Entity Framework Core-basierten AnwendFungen
  • Verfügbare Datenbanktreiber
  • Performance von Entity Framework Core im Vergleich zu Entity Framework


  • Grundkonzepte von Entity Framework Core
  • Grundkonzepte von Entity Framework Core: Entitätsklassen und Kontextklassen (DbContext)
  • Reverse Engineering (Database First) vs. Forward Engineering (Object Model First)


  • Modelle generieren (Reverse Engineering)
  • Werkzeuge für das Reverse Engineering: PowerShell, Kommandozeile, EF Core Power Tools
  • Projekteinrichtung
  • Herausforderungen bei der Modellgenerierung
  • Anpassung der Code-Generierung mit T4-Templates
  • Verbesserung des generierten Programmcodes


  • Modelle selbst erstellen (Forward Engineering)
  • Erstellen einer persistenten Klasse mit Plain Old CLR Objects (POCOs)
  • Beziehungen zu anderen Klassen
  • Dataannotations
  • Entity Framework-Kontextklasse (DbContext)
  • Eingebaute Konventionen
  • Nutzung von Enumerationen
  • Vererbung und Vererbungsstrategien (TPH, TPT, TPC)
  • Datenbank erstellen aus Modellen


  • Modelle anpassen
  • Konventionen überschreiben
  • Explizite Konfiguration mit Annotationen/.NET-Attributen
  • Explizite Konfiguration mit Fluent-API


  • Datenbankschemagenerierung und Schemamigrationen
  • PowerShell-Commandlets
  • Migrationen definieren
  • Schemamigrationen ausführen
  • Zurückkehren zu alten Ständen
  • Migrationsklasse
  • Komplexere Migrationen mit Datenaktualisierung
  • Data Seeding


  • Datenbankoperationen (CRUD)
  • Objekte anlegen
  • Objekte abfragen mit LINQ

  • Methodensyntax vs. Query-Syntax
    Umsetzung in SQL
  • Objekte abfragen mit SQL, Views, Stored Procedures und Table-valued Functions
  • Query Tags
  • Daten ändern
  • Daten löschen
  • Massenoperationen mit ExecuteUpdate() und ExecuteDelete()
  • Einfügen, Ändern und Löschen per Stored Procedure bei SaveChanges()


  • Objektbeziehungen und Ladestrategien
  • Abhängigkeiten definieren
  • Navigieren zwischen Objekten
  • Nachladen
  • Eager Loading (Include/ThenInclude/Auto Includes)
  • Preloading
  • Lazy Loading (ab Version 2.1)


  • Aufbauwissen
  • Architekturfragen: Rolle von EFCore in der Sofwtarearchitektur, Atached vs. Detached
  • Besondere Mapping-Optionen: Shadow State, Table Splitting/Owned Types, Entity Splitting, JSON-Mapping u.a.
  • Caching
  • Protokollierung (Logging)
  • Asynchrone Programmierung
  • Dynamische LINQ-Abfragen
  • Globale Filter
  • Value Conversions
  • Kaskadierendes Löschen
  • Konflikterkennung und Konfliktlösung (Concurrency)
  • Transaktionen (inkl. TransactionScope)


  • Einsatzgebiete
  • Einsatz von Entity Framework in ASP.NET Core und Blazor (Server, Cloud)
  • Einsatz von Entity Framework in Desktopanwendungen (WPF und/oder Windows Forms)
  • Einsatz von Entity Framework in Mobile Apps (.NET MAUI)
  • Einsatz von Entity Framework in Blazor-Apps im Browser


  • Optional: Profiwissen
  • Konventionen anpassen und selbst erstellen
  • Verhalten von Entity Framework Core ändern mit Interceptoren
  • Leistungsoptimierungen/Performance-Tuning (No-Tracking, Caching, Compiled Queries, Compiled Models, u.a.)
  • Unit Testing / Integrationstests mit In-Memory-Treiber
  • Tipps, Tricks, Best Practices


  • Optional: Zusatzwerkzeuge
  • EF Core Power Tools
  • LINQPad
  • EF Profiler
  • Entity Developer


  • Optional: Zusatzkomponenten wie z.B. EFPlus

    Dauer
    Auf Wunsch. Gerne geben wir Ihnen eine Empfehlung zur notwendigen Schulungsdauer, wenn Sie uns in der Anfrage Ihre Vorkenntnisse und Ziele nennen.
    Ort
    Online oder in Deutschland, Österreich und der Schweiz an Ihrem Firmensitz
    Schulungsdidaktik
    Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil