Entity Framework 4 - Model First und der rote Faden bei DDL-Vorlagen

Ich beschäftige mich gerade ein wenig mit den T4-Vorlagen zur Erstellung des DDL-Skripts. Hier liegt eigentlich schon das Problem. Die Item-Vorlagen für die DDL-Generierung folgen nicht dem gewohnten Muster. Dies macht auch die Verteilung dieser Vorlagen mit Hilfe des Extension Managers mittels VSIX-Projekt schwierig, da die Vorlagen in einem bestimmten Verzeichnis kopiert werden müssen.

Die Auswahl des DDL-Skripts erfolgt über die Eigenschaften des Entity Designer Modells.

Abbildung 1
Abbildung 1 DDL Generierungsvorlage

In der Auswahlbox steht nur die Vorlage SSDLToSQL10.tt zur Verfügung. Ich habe den Anspruch, dass die Generierungsvorlage neben den Tabellen auch Schattentabellen für die Historisierung anlegen soll, und will dafür eine modifizierte Vorlage bereitstellen.

Wer schon eigene Vorlagen für gespeicherte Prozeduren im SQL Server Management Studio oder Vorlagen für SSIS-Packages im BI Studio erstellt hat, dem wird das nachfolgende "Gefrickel" ein wenig bekannt vorkommen. ;-)

Die Vorlage SSDLToSQL10.tt befindet sich im Verzeichnis "Laufwerk:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\DBGen". In diesem Verzeichnis befindet sich auch die Datei für die Workflowgenerierung. Die angepasste DDL-Vorlage muss auch in dieses Verzeichnis kopiert werden. Anschliessend kann diese über die Eigenschaften ausgewählt werden und das sogar ohne Neustart von Visual Studio 2010. ;-)

Abbildung 2
Abbildung 2 Eigene DDL-Vorlage mit DML-Historiesierung

Bei Gelegenheit werde ich prüfen, ob es möglich ist, diese Vorlagen mittels Setup zu verteilen.

Zusammenfassend lässt sich feststellen, dass die T4-Vorlagen im Entity Framework einen Hype erleben. So können zum Grossteil projektspezifische Anpassungen vorgenommen werden, die sonst eine manuelle Nacharbeit erforderlich machen würden.

Die Herausforderung liegt bei den T4-Vorlagen, es besteht die Gefahr, dass nicht auf die Struktur geachtet wird mit der Auswirkung der schlechten Les- und Wartbarkeit.

  •  
  • 0 Kommentar(e)
  •  

Mein Kommentar

Über jeden weiteren Kommentar in diesem Post benachrichtigen.

Zurück

Translate this page

Kategorien

  • [-].NET Development (215)
  • [-]Datenbank (26)
  • HTML (1)
  • Konfiguration (12)
  • Mind Map (10)
  • Off-topic (9)
  • Open Source (3)
  • Qualität (7)
  • Sharepoint (6)
  • Sicherheit (2)

Archiv

Social Bookmarking

Bookmark bei: Mr. Wong Bookmark bei: Webnews Bookmark bei: Icio Bookmark bei: Oneview Bookmark bei: Linkarena Bookmark bei: Favoriten Bookmark bei: Seekxl Bookmark bei: Favit Bookmark bei: Social Bookmarking Tool Bookmark bei: Power Oldie Bookmark bei: Bookmarks.cc Bookmark bei: Newskick Bookmark bei: Newsider Bookmark bei: Linksilo Bookmark bei: Readster Bookmark bei: Folkd Bookmark bei: Yigg Bookmark bei: Digg Bookmark bei: Del.icio.us Bookmark bei: Reddit Bookmark bei: Simpy Bookmark bei: StumbleUpon Bookmark bei: Slashdot Bookmark bei: Netscape Bookmark bei: Furl Bookmark bei: Yahoo Bookmark bei: Spurl Bookmark bei: Google Bookmark bei: Blinklist Bookmark bei: Blogmarks Bookmark bei: Diigo Bookmark bei: Technorati Bookmark bei: Newsvine Bookmark bei: Blinkbits Bookmark bei: Ma.Gnolia Bookmark bei: Smarking Bookmark bei: Netvouz Information