RSS FeedFeed TwitterTwitter XINGXING
  
Meine Bücher

Verteilte Systeme und Services mit .NET 4.0: Konzepte und Lösungen mit WCF 4.0,
Hanser Fachbuchverlag

Weitere Infos

 

.NET 4 Update,
Microsoft Press

Weitere Infos

 
Weitere Bücher
Meine Artikel

Leichtgewichtige Kommunikation: REST-basierte Services mit dem neuen API aus der ASP.NET-Familie,
windows.developer

Weitere Infos

 

EAI und EDI in der Cloud ,
windows.developer

Weitere Infos

 

Verteilt und doch ein Ganzes: Verteilte Systeme mit AppFabric Applications,
dot.net magazin

Weitere Infos

 

Vorschau auf Neuerungen der kommenden WCF-Version,
dot.net magazin

Weitere Infos

 

Windows Azure Tutorial, Teil 3: Verbindung zwischen Cloud- und lokalen Applikationen,
iX - Magazin für professionelle Informationstechnik

Weitere Infos

 

MVC, die dritte: ASP.NET MVC 3 RC 2,
dot.net magazin

Weitere Infos

 

Leichtgewichtiges O/R-Mapping - Code Only mit Entitiy Framework CTP 5,
dot.net magazin

Weitere Infos

 

Weitere Artikel

Training & Beratung

Gemeinsam mit meinen Kollegen aus dem IT-Visions Netzwerk unterstützte ich durch zielgerichtete Inhouse-Schulungen und Beratung Unternehmen bei der Planung und Umsetzung von großer Software-Systeme.

Mehr lesen

In Kontakt treten

 
Konferenzen

BASTA! on Tour von 4/25/2012 bis 4/27/2012 in Düsseldorf

Meine Talks

Web-Site der Konferenz

 

BASTA! Spring 2012 von 2/27/2012 bis 3/2/2012 in Darmstadt

Meine Talks

Web-Site der Konferenz

 

ADC - Advanced Developers Conference von 10/26/2011 bis 10/27/2011 in Frankental (Deutschland)

Meine Talks

Web-Site der Konferenz

 

Scandev on tour von 10/18/2011 bis 10/18/2011 in Stockholm (Schweden)

Meine Talks

Web-Site der Konferenz

 

BASTA 2011 von 9/26/2011 bis 9/30/2011 in Mainz

Meine Talks

Web-Site der Konferenz

 

Jazoon - International Conference on the modern art of software von 6/21/2011 bis 6/23/2011 in Zürich

Meine Talks

Web-Site der Konferenz

 

Scandinavian Developer Conference 2011 von 4/4/2011 bis 4/5/2011 in Göteborg (Schweden)

Meine Talks

Web-Site der Konferenz

 

SOA-Days von 3/30/2011 bis 3/31/2011 in Bonn

Meine Talks

Web-Site der Konferenz

 
Weitere Konferenzen
von Manfred, 24. July 2011 17:05

 Ein konzeptionelles Problem des Entity Frameworks ist das explizite Entity Data Model (EDM). Klar, irgendwo muss beschrieben werden, was wie zu mappen ist. Aber das explizite EDM ist redundant: Entitätsklassen müssen zum einen entwickelt und zum anderen im EDM, genauer gesagt im CSDL-Teil, beschrieben werden. Dasselbe gilt für DB-Strukturen und die Beschreibung im SSDL-Teil des EDM. Wenn sich irgendwo etwas ändert, muss das an den anderen Stellen nachgezogen werden. Das ist aber nicht das einzige Problem:

 

1.      Ab einer gewissen Anzahl an Entitäten wird die graphische Darstellung des EDM unübersichtlich. Normalerweise würde man nun das Modell auf verschiedene Submodelle aufteilen, aber das ist nicht ohne weiteres möglich, zumal man nicht auf Tabellen in anderen Modellen referenzieren kann.

 

2.      Das Modell kann nicht einfach modularisiert werden.  Der Grund dafür ist derselbe, wie beim letzten Punkt: Man kann Modelle nicht sinnvoll aufteilen.

 

3.      Kommen wir zum letzten Punkt: Wechsel der Datenbank. Dies ist ja eines der großen Versprechen von O/R-Mappern. Möchte man das eingesetzte DBMS wechseln, muss man für das neue DBMS ein erneutes SSDL generieren lassen und dieses gemeinsam mit den existierenden MDL-Teil und CSDL-Teil verwenden.

 

Bei (N)Hibernate gibt es diese Probleme eigentlich nicht. Der Grund dafür ist, dass lediglich die Mapping-Aspekte zu beschreiben sind – und das auf eine, im Vergleich zu den XML-Untiefen des EDM, ziemlich übersichtliche Art. Alles andere leitet das Framework aus den bestehenden Klassen ab.

 

Glücklicherweise ist dies seit Entity Framework 4.1 mit dem Code-First-Ansatz nun auch möglich. Dieser suggeriert zwar, dass man zuerst die Entitäten modellieren muss und dann daraus eine Datenbank zu erstellen ist, aber dank der Möglichkeit von Codegenerierung ist dies nicht der Fall. So bietet zum Beispiel die Entity Framework Power Tools CTP1, welche über den Extension Manager von VS 2010 bezogen werden können, diese Möglichkeit.

 

Kategorien: Entity Framework