.NET-Technologien: die Datenfunktionen im Überblick

Im zweiten Teil der .NET-Serie dreht sich alles um die Datenfunktionen von .NET. Die Grundlagen-Reihe bietet eine Einführung in ADO.NET, LINQ, Entity Framework, NHibernate, WCF Data Services, WCF RIA Services und ODBC.

ActiveX Data Objects .NET (ADO.NET) ist eine Sammlung von Technologien, die grundlegende Datenkonnektivitätsfunktionen umfasst. Dinge wie die Fähigkeit, eine Verbindung zu einer Datenbank herzustellen, gehören zu ADO.NET. Man darf sich durch ActiveX im Titel nicht verwirren lassen – das ist lediglich eine Markenstrategie von Microsoft aus früheren Epochen, die dazu beitragen soll, die Gemüter von Entwicklern in Bezug auf die Technologie zu beruhigen. ADO.NET gehört zum .NET Framework.

Language Integrated Query (LINQ) wurde in .NET 3.5 eingeführt; es stellt ein standardisiertes Paket von SQL-ähnlichen Ausdrücken bereit, die wie in .NET-Sprachen, beispielsweise C# und VB.NET, zu verwenden sind. Objekte können LINQ-Provider bereitstellen, sodass sie abgefragt werden können (inklusive Aktualisierungen und Löschungen). Auch wenn das nicht sofort einleuchtet, kann es jedoch ganz nützlich sein, eine SQL-ähnliche Sprache zur Datenabfrage zu verwenden. Doch kann LINQ mehr als nur Datenbanken abfragen – es kann an XML-Daten, Objekte im Arbeitsspeicher, Webservices, ORM-Systeme und anderes mehr gebunden werden. Im Ergebnis lassen sich, wenn man ein standardisiertes Verfahren für die Arbeit mit Daten unabhängig vom unterstützenden Speichersystem hat, mit viel weniger Wissen und Aufwand Anwendungen entwickeln. Gängige LINQ-Provider sind zum Beispiel:

  • LINQ-to-objects: Objekte, die IEnumerable implementieren
  • LINQ-to-XML: die XML-Objekte im LINQ-Namensraum
  • LINQ-to-Entities: Entity Framework
  • LINQ-to-NHibernate: NHibernate
  • LINQ-to-SQL: SQL Server-Datenbanken

Entity Framework oder „EF“ ist Microsofts ORM, das auf ADO.NET-Technologien aufsetzt. Die erste Ausgabe wurde weithin als funktionsarm und übermäßig komplex betrachtet. Die zweite Ausgabe (verwirrenderweise Entity Framework 4 genannt) enthält zahlreiche Verbesserungen und beseitigt viele Bedenken hinsichtlich der ersten Ausgabe. EF kann durch LINQ genutzt werden.

NHibernate ist ein Open-Source-ORM auf Basis von Hibernate für die Java-Plattform. NHibernate hat innerhalb der .NET-Gemeinde Zustimmung gefunden, weil es ein gut gemachtes Produkt ist. LINQ kann NHibernate abfragen. NHibernate steht in direkter Konkurrenz zum Entity Framework und wird durch die Gemeinde gut unterstützt.

Windows Communication Foundation (WCF) Data Services setzen auf die WCF-Plattform auf. Diese Dienste erlauben die Entwicklung eines einfachen Webdienstes zum Zugriff auf eine zugrunde liegende Datenquelle und können automatisch aus einer Datenquelle generiert werden. Wenn man für einen externen Client Daten bereitstellen muss, sind die WCF Data Services die beste Möglichkeit. Dem Sicherheitsbewussten erlauben sie die Vergabe sehr detaillierter und differenzierter Berechtigungen. WCF erzeugt XML, RDF oder JSON. WCF Data Services erzeugen einen RESTful-Webdienst.

WCF RIA Services, eine andere Untergruppe der WCF-Plattform, ist darauf spezialisiert, Anwendungen mit beliebig vielen Schichten mit Silverlight zu erstellen. WCF RIA Services umfassen die Serverseite und die Clientseite. Auf der Clientseite erzeugen sie Klassen, die mit CRUD-Operationen auf dem Server umgehen können (aber nicht mit der zugrunde liegenden Logik), so dass Operationen auf dem Client problemlos die entsprechende Logik auf dem Server auslösen können.

Open Database Connectivity (ODBC) ist der Großvater aller Datenkonnektivitätssysteme für Windows. Zwar ist ODBC keine .NET-spezifische Technologie, doch kann ADO.NET eine Verbindung zu ODBC-Datenquellen herstellen.

Themenseiten: Big Data, Datenbank, Microsoft, Plattform, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu .NET-Technologien: die Datenfunktionen im Überblick

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *