iX 2/2017
S. 50
Review
OR-Mapping
Aufmacherbild

Datenbankprogrammierung mit Entity Framework Core

Spaltstoff

Zu Microsofts .NET-Core-Strategie gehört Entity Framework Core, eine plattformunabhängige Datenzugriffstechnik für relationale und NoSQL-Datenbanken. Allerdings klaffen in dieser Programmierschnittstelle noch gravierende Lücken.

In der Softwareentwicklung mit dem klassischen .NET Framework hat sich der objektrelationale Mapper „ADO.NET Entity Framework“ etabliert [1]. Bei der Arbeit an .NET Core entschloss sich Microsoft, das Entity Framework von Grund auf neu zu gestalten. Zwischenzeitlich hieß das neue Produkt Entity Framework 7.0 – der nun geltende Name Entity Framework Core 1.1.x drückt jedoch besser aus, dass es kein direkter Nachfolger von Entity Framework 6.1.3 ist, sondern ein neues Produkt, das sich funktional und hinsichtlich der Programmierschnittstellen gravierend geändert hat.

Neben den allgemeinen Zielen der Core-Strategie (Plattformunabhängigkeit und Modularisierung [2]) stand bei Entity Framework Core Entschlackung und Performance oben auf der Agenda. Als Microsoft dieses Framework vor fast zehn Jahren konzipierte, war das hochtrabende Ziel, möglichst weit weg vom relationalen Datenbankmodell zu abstrahieren und ein Entity Data Model (EDM) als Grundlage für Datenverarbeitungswerkzeuge im Bereich ETL, OLTP und OLAP bereitzustellen. Es zeigte sich jedoch, dass durch zunehmende Abstraktion Leistungsverluste entstehen. Daher blieb vieles aus dem damaligen Konzept unvollendet.