Die Neuerungen im Entity Framework stehen, wie die des gesamten Frameworks, im Zeichen einer Verbesserung der Entwicklungs- und Laufzeitperformance. Die bereits etablierte Technologie wurde damit konsequent weiterentwickelt. Die Highlights aus Entwicklersicht werden im Folgenden kurz vorgestellt.
Verbesserte Performance
LINQ Abfragen werden im .NET Framework 4.5 automatisch kompiliert. Dies führt zu einer deutlichen Performance Verbesserung bei sich wiederholenden Abfragen, wie ein im ADO.net-Blog veröffentlichter Vergleich zeigt.
Anwendungen, die auf das .NET Framework 4.5 umgestellt werden, profitieren automatisch von dem Geschwindigkeitszuwachs. Eine Anpassung des Quellcodes ist nicht erforderlich. Auf ein manuelles vorkompilieren von Abfragen, was bereits im aktuellen Framework möglich ist, kann verzichtet werden. Dies macht den Quellcode übersichtlicher und damit wartbarer.
Verbesserungen im Designer
Die Bearbeitung von Entity Framework Modellen gestaltet sich im Visual Studio 2012 deutlich einfacher. Die wichtigste Neuerung hierbei ist die Möglichkeit zu einem Entity Framework Modell mehrere Diagramme hinterlegen zu können. Dies ermöglicht es, zusammengehörige Bereiche jeweils in einer Ansicht zu gruppieren. Das Modell wird hierdurch übersichtlicher und kann schneller bearbeitet werden.
Zusätzlich können in den einzelnen Diagrammen Bereiche durch den Einsatz von Farben noch einmal voneinander abgegrenzt werden.
Weiterhin werden bei der Selektion von Beziehungen relevante Eigenschaften hervorgehoben.
Die kleinen Erweiterungen im Designer wirken sich insbesondere bei der Entwicklung von Modellen mit sehr vielen Entitäten positiv aus. Ein schneller Überblick auch über sehr große Modelle wird ermöglicht.
Unterstützung von Enums
Als funktionale Neuerung hält in das Entity Framework die Unterstützung von Enumerationen Einzug.
Eine Umwandung einer Eigenschaft vom Typ Integer in eine Enum kann im Designer vorgenommen werden. Entsprechend ist eine Verwendung der Enumeration direkt in einer LINQ Abfrage möglich. Die Speicherung der Daten erfolgt dabei weiterhin als Integer in der Datenbank.
Unterschiedliche Vorgehensmodelle
Das Entity Framework bietet in der Version 5.0 nun drei unterschiedliche Vorgehensmodelle an. Jede hat ihre spezifischen Vorteile und Einsatzgebiete. Die Ersten beiden sind bereits aus dem Framework 4.0 bekannt.
Database First
Das Schema der Datenbank ist führend. Das Model wird aus diesem abgeleitet. Der Ansatz kommt unter anderem dann zur Anwendung, wenn bereits eine Datenbank existiert, der Entwickler das Schema sehr stark beeinflussen möchte oder wenn sehr viel mit Stored Procedures gearbeitet wird. Es eignet sich dabei vor allem für Datenbank Spezialisten.
Model First
Das Modell wird objektorientiert im Entity Framework Designer entwickelt. Die Entitäten stehen hierbei im Vordergrund. Die Datenbank leitet sich aus dem Modell ab. Der Ansatz eignet sich damit am besten für Entwickler, die mit modellgetriebenen Ansätzen vertraut sind.
Code First
Bei diesem Vorgehen stellt der Quellcode das Modell dar. Auf eine Nutzung des Entity Framework Designers wird verzichtet. Die Datenbank leitet sich direkt aus dem Code ab und wird automatisch beim ersten Start der Anwendung generiert. Die Variante eignet sich damit vor allem für Anwendungen die eine leichtgewichtige Persistierungsmöglichkeit benötigen.
Das Entity Framework 5.0 stellt eine konsequente Weiterentwicklung der bereits etablierten Technologie dar. Insbesondere die Verbesserungen im Designer sowie die Unterstützung von Enums vereinfachen die tägliche Arbeit. Das automatische Kompilieren steigert zudem die Laufzeitperformance. Damit wurden wichtige Bausteine ergänzt, um die Erfolgsgeschichte fortzuschreiben.