Sie sind hier:
Wissen
Telefon (Mo-Fr 9 bis 16 Uhr):
0201/649590-0
|
Kontaktformular
MENU
Medien
Übersicht
Lexikon/Glossar
Spickzettel
Weblog
Konferenzvorträge
Fachbücher
Fachartikel
Leserportal
Autoren gesucht!
Literaturtipps
Praxisnahe Fallbeispiele
Downloads
Newsletter
.NET
Startseite
.NET 8.0
.NET 7.0
.NET 6.0
.NET 5.0
.NET Core
.NET 4.0/4.5.x/4.6.x
.NET 3.0/3.5
.NET 2.0
.NET-Lexikon
Programmiersprachen
Entwicklerwerkzeuge
Klassenreferenz
Softwarekomponenten
Windows Runtime
World Wide Wings-Demo
Versionsgeschichte
Codebeispiele
ASP.NET
Artikel
Bücher
Schulung & Beratung
Konferenzen/Events
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Technische Beiträge
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
Forum
Schulung & Beratung
PowerShell
Startseite
Commandlet-Referenz
Codebeispiele
Commandlet Extensions
Versionsgeschichte
Schulungen+Beratung
Windows
Startseite
Windows Runtime (WinRT)
Windows PowerShell
Windows Scripting
Windows-Schulungen
Windows-Lexikon
Windows-Forum
Scripting
Startseite
Lexikon
FAQ
Bücher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
WMI-Klassenreferenz
Scripting-Tools
WSH-Editoren
Codebeispiele
.NET-Scripting
Forum
Schulung & Beratung
Nutzer
Anmeldung/Login
Buchleser-Registrierung
Gast-Registrierung
Hilfe
Website-FAQ
Technischer Support
Site Map
Tag Cloud
Suche
Kontakt
Erklärung des Begriffs: Entity Framework Core 9.0 (EF9)
Begriff
Entity Framework Core 9.0
Abkürzung
EF9
Eintrag zuletzt aktualisiert am
19.11.2024
Zur Stichwortliste unseres Lexikons
Was ist
Entity Framework Core 9.0
?
Entity Framework Core 9.0 ist der Nachfolger von
Entity Framework Core 8.0
. Entity Framework Core 9.0 im Rahmen von
.NET 9.0
am 12. November 2024 erschienen. Entity Framework Core 9.0 läuft nicht nur auf
.NET 9.0
, sondern auch auf
.NET 8.0
!
Hinweis: Microsoft kürzt Entity Framework Core 9.0 mit "EF9" ab, was zu Verwechselungen mit dem klassischen Entity Framework (EF) führen kann. Auch wenn es davon keine Version 9.0 gibt, wird es nun schwierig, wenn zwei Entwickler sich unterhalten. Die Aussage "Ich setze EF ein." ist dann nicht mehr eindeutig.
Support für Entity Framework Core 9.0
Entity Framework Core besitzt den gleichen Support-Zyklus wie .NET selbst, d.h.: Anders als der Vorgänger
Entity Framework Core 8.0
besitzt die 9.0-Version nur einen "
Standard-Term-Support
" (18 Monate) statt "Long-Term-Support" für 36 Monate.
Breaking Changes in Entity Framework Core 9.0
Die
Liste
der Breaking Changes in Entity Framework Core 9.0 gegenüber der Vorgängerversion enthält nur vier Breaking Changes mit geringer Auswirkung.
https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-9.0/breaking-changes
Versionsgeschichte inkl. Vorabversionen
Preview 1 am 13.2.2024
Preview 2 am 12.3.2024
Preview 3 am 11.4.2024
Preview 4 am 21.5.2024
Preview 5 am 21.5.2024
Preview 6 am 09.07.2024
Preview 7 am 13.08.2024
Release Candidate 1 am 10.09.2024
Release Candidate 2 am 08.10.2024
Release to Manufacturing (RTM) am 12.11.2024
Überblick über die Neuerungen in Entity Framework Core 9.0
Verbesserungen bei der Modellerstellung
Automatisch kompilierte Modelle
Schreibgeschützte
Objektmenge
n als
Property
-Typ
Cache-Einstellungen bei der Erstellung von Sequenzen
Weitere Verbesserungen bei der Modellerstellung
Die Entity Framework Core-Kommandozeilenwerkzeuge sollen nun weniger häufig eine Neukompilierung des Projekts erfordern.
Die Erstellung von Konventionen für die Modellerstellung hat Microsoft verschlankt
LINQ
und Change-Tracking-
API
Typsichere Erstellung von Hierarchie-IDs: HierarchyId.Parse(hierarchyId, int) neben HierarchyId.Parse(string)
Neue Materialisierungsmethode To
Hash
SetAsync()
Verkürzte Syntax für die Massenaktualisierung kompletter komplexer Typen bei ExecuteUpdate() und ExecuteUpdateAsync()
Übersetzung
LINQ
zu SQL
Einfluss auf die Parametrisierung
Gruppierungen über komplexe Typen
Math.Min() und Math.Max()
TimeOnly.FromDateTime() und TimeOnly.FromTimeSpan()
TrimStart() und TrimEnd()
PatIndex()
Weitere Verbesserungen bei der Übersetzung von
LINQ
in SQL
Verbesserungen für
Azure Cosmos DB
-
Datenbank
treiber
Weitere Verbesserungen finden sich im Entity Framework Core-
Datenbank
treiber für
Azure Cosmos DB
. Der Cosmos DB-Provider hat bereits seit
Entity Framework Core 6.0
primitive Sammlungen in begrenzter Form unterstützt. In Version 9.0 wird diese Unterstützung verbessert, indem die
Metadaten
und
API
-Oberflächen für primitive Sammlungen in Dokumentdatenbanken, mit denen in relationalen
Datenbank
en konsolidiert werden. Dadurch können primitive Sammlungen explizit mit der
Modellierung
s-
API
abgebildet werden, das die Konfiguration von Facetten des Elementtyps ermöglicht. Zum Beispiel kann eine
Liste
von erforderlichen (nicht-null) Zeichenfolgen nun wie folgt abgebildet werden:
modelBuilder.Entity<Book>()
.PrimitiveCollection(e => e.Quotes)
.ElementType(b => b.IsRequired());
Zudem wirft der Entity Framework Core-
Datenbank
treiber für
Azure Cosmos DB
ab Entity Framework Core 9.0 nun einen Laufzeitfehler aus, wenn Entwicklerinnen und Entwickler synchrone Zugriffe (z.B. mit ToList()) versuchen. Der Treiber unterstützt intern nämlich gar keine synchronen Zugriffe. Bisher waren synchrone Zugriffe dennoch möglich, wurden intern asynchron ausgeführt und dann wurden dann bis zum Ausführungsende blockiert. Das konnte zu Deadlocks führen. In Version 9.0 gibt es in diesem Falle nun im Standard einen Laufzeitfehler. Derzeit kann man das alte Verhalten noch wiederherstellen mit:
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder.ConfigureWarnings(b => b.Ignore(CosmosEventId.SyncNotSupported));
Microsoft hat in der Dokumentation
https://learn.microsoft.com/en-us/ef/core/what-is-new/ef-core-9.0/whatsnew#azure-cosmos-db-for-nosql
verkündet, dass man in zwei Jahren (in Version 11.0 von Entity Framework Core) synchrone Aufrufe im Treiber für
Azure Cosmos DB
komplett verbieten will. Spätestens dann müssen Entwicklerinnen und Entwickler alle synchronen Materialisierungsoperationen wie ToList() in die asynchronen Pendants ToListAsync() umgewandelt haben.
Außerdem unterstützt der Cosmos DB-Provider für Entity Framework Core ab Version 9.0 auch die rollenbasierte
Zugriffskontrolle
(RBAC) [
https://learn.microsoft.com/en-us/azure/cosmos-db/role-based-access-control
].
Querverweise zu anderen Begriffen im Lexikon
Entity Framework Core 8.0
Entity Framework Core 6.0
Standard-Term-Support (STS)
Zugriffskontrolle
Azure Cosmos DB
Modellierung
Objektmenge
Metadaten
Datenbank (DB)
.NET 8.0 (.NET 8)
Property
.NET 9.0 (.NET 9)
Liste
Hash
Language Integrated Query (LINQ)
Application Programming Interface (API)
Beratung & Support
Anfrage für Beratung/Consulting zu Entity Framework Core 9.0 EF9
Gesamter Beratungsthemenkatalog
Technischer Support zum Entity Framework Core 9.0 EF9
Schulungen zu diesem Thema
Entity Framework Core 9.0 - Änderungen und Neuerungen gegenüber Entity Framework Core 8.0
.NET-Entwickler-Update 2024
.NET 9.0 - Änderungen und Neuerungen gegenüber .NET 8.0
Anfrage für eine individuelle Schulung zum Thema Entity Framework Core 9.0 EF9
Gesamter Schulungsthemenkatalog
Bücher zu diesem Thema
Moderne Datenzugriffslösungen mit Entity Framework Core 9.0
Alle unsere aktuellen Fachbücher
E-Book-Abo für ab 99 Euro im Jahr