communityWir suchen ständig neue Tutorials und Artikel! Habt ihr selbst schonmal einen Artikel verfasst und seid bereit dieses Wissen mit der Community zu teilen? Oder würdet ihr gerne einmal über ein Thema schreiben das euch besonders auf dem Herzen liegt? Dann habt ihr nun die Gelegenheit eure Arbeit zu veröffentlichen und den Ruhm dafür zu ernten. Schreibt uns einfach eine Nachricht mit dem Betreff „Community Articles“ und helft mit das Angebot an guten Artikeln zu vergrößern. Als Autor werdet ihr für den internen Bereich freigeschaltet und könnt dort eurer literarischen Ader freien Lauf lassen.

Microsoft erweitert Framework um die Entwicklung zu vereinfachen PDF Drucken E-Mail
Samstag, den 08. September 2007 um 16:17 Uhr

Mit dem Ziel den Entwicklern dabei zu helfen Geschäftsanwendungen zu entwickeln, hat Microsoft diese Woche eine zweite Beta-Version des ADO.Net Entity Framework veröffentlicht und eine Vorschau auf Werkzeuge gegeben, wie man mit dem Framework arbeitet. Das Ziel des ADO.Net Entity Framework ist die Eliminierung der Kluft zwischen Datenbankmodellen und Sprachen, um Entwickler davor zu bewahren sich mit beidem beschäftigen zu müssen.

Damit erweitert Microsoft den Datenzugriff um eine zusätzliche Abstraktionsschicht. Kernelement des ADO.NET Entity Framework sind das EDM und die Sprache Entity SQL (eSQL) sowie die Integration von eSQL in die .NET-Programmiersprachen (Language Integrated Query). Das EDM ist eine XML-Sprache zur Beschreibung von Datenstrukturen aller Art (relationale Daten, XML-Daten, .NET-Objekte). EDM unterstützt komplexe Datentypen, Vererbung und Beziehungen.

EDM-Beschreibungen können auf andere EDM-Beschreibungen abgebildet werden (EDM Mapping). Ein Beispiel für ein EDM Mapping ist die Abbildung einer .NET-Klassenhierarchie auf eine relationale Datenbank. Für das objekt-relationale Mapping kann man .NET-Klassendefinitionen aus EDM-Beschreibungen generieren lassen. Die generierten .NET-Klassen erben von der Basisklasse Entity. Ein Entwickler kann die Klassen jedoch um eigene Attribute und Methoden anreichern ohne erneut zu erben, da die generierten Klassen die in .NET 2.0 eingeführte Möglichkeit der partiellen Klassen nutzen.

Zur Abfrage von Informationen aus Datenquellen, die durch EDM beschrieben werden, verwendet Microsoft eine neue Erweiterung von SQL (Entity SQL). Die Redmonder kürzen dies mit eSQL ab, obwohl eSQL eigentlich schon als Abkürzung für Embedded SQL verwendet wird.

Im Programmcode 3.x ist die Ausführung von eSQL mit Hilfe eines neuen .NET Data Providers möglich, den Microsoft den Map Provider nennt. Im Normalfall stehen die eSQL-Befehle als Zeichenketten im Programmcode. Microsoft ermöglicht durch Language Integrated Query (LINQ) aber auch, dass SQL- und eSQL-Befehle wie Befehlswörter im Quelltext von C# 3.0 und Visual Basic 9.0 hinterlegt werden und damit auch der Prüfung durch den jeweiligen Sprachcompiler unterliegen. LINQ ist kein Teil von ADO.NET 3.x, sondern wiederum ein Aufsatz. Die aktuelle Version von LINQ stammt aus dem Mai 2006.

Durch die im Entity Framework integrierten Object Services kann man Änderungen auch Entities auch persistent machen. LINQ kann man auch auf Datasets anwenden, sodass Datasets endlich auch eine vollständige Abfragesprache erhalten.

Automatisierung von komplexen Prozessen ist für das Framework entscheidend. "Wenn heute ein Entwickler eine Anwendung baut, muss er Code schreiben, der die Kluft zwischen der Art, wie die Daten in vielen Datenbanken gespeichert werden, mit denen sie interagieren, und der Art, wie sie die Daten in ihren Anwendungen manipulieren wollen", sagte Britt Johnston Produktverantwortlicher für Datenbankwerkzeuge bei Microsoft. "Im Allgemeinen, ist das was sie tun die Generierung eines Objektmodells, wogegen sie ihren Code schreiben."

Entwickler könnten eine Anwendung schreiben, die ein CRM System mit Daten für Kunden die in 12 verschiedenen Tabellen gespeichert sind manipulieren, sagte Johnston.

"Mit dem Entity Framework, können sie den Prozess im Grunde genommen automatisieren, indem sie alle Daten zusammen bringen und sie dem Entwickler als Entität präsentieren, so dass sie damit auf einer höheren Ebene der Abstraktion interagieren können", sagte Johnston weiter.

Die neuen Schlüsseltechnologien in der Framework Beta-Version schließen Ereignisse ein, um die Codegenerierung individuell anzupassen, sowie komplexe Programmiertypen und Entitätsschüssel zur Serialisierung. Ein Schlüssel ist ein eindeutiger Bezeichner für eine Entität wie eine Kunden-ID. Metadaten Anmerkungen und bessere Unterstützung für LINQ (Language Integrated Query) sind auch eingeschlossen. LINQ bringt Erweiterungen für das .Net Framework, um sprachintegrierte Daten zu umfassen, Vorgänge zu transformieren und durchzuführen.

Entwickler können auf das Framework auf Microsoft's Website zugreifen. Das ADO.Net Entity Frameworkt wird als Teil des .Net Framework 3.5 Anfang 2008 veröffentlicht. Die Meisten werden es automatisch als Update des Betriebssystems erhalten. Die ADO.Net Entity Framework Technologievorschau für den August bringt eine frühe Version des ADO.Net Entity Designer, das es Benutzern ermöglicht, visuell Modelle zu gestalten und Zuordnungen mithilfe von Visual Studio 2008 Beta 2. Die Vorschau ist auf der Microsoft's Downloadseite zusammen mit den Hilfsprogrammen, die Teil von Visual Studios 2008 sind, zugänglich.

Mit dem Framework können Entwickler sich auf den Kernpunkt einer Anwendung konzentrieren, statt sich Gedanken darüber machen zu müssen wie sie unterschiedliche Datenrepräsentationen überbrücken. Das Framework besteht aus einem Datenbankmodell und einer Designzeit und Laufzeitdiensten, die es ermöglichen, dass Entwickler Anwendungsdaten beschreiben und damit auf einer konzeptionellen Ebene der Abstraktion kommerzielle Anwendungen für ihr Unternehmen schreiben. Dies hilft, die Anwendung von zugrundeliegenden logischen Datenbankschemen zu isolieren.