Jenseits von JavaScript und HTML5: Ausblick auf .NET 4.5 und Visual Studio 11.0

Seite 2: ASP.NET & ADO.NET

Inhaltsverzeichnis

Die in .NET 1.0 eingeführten ASP.NET Webforms wurden wiederholt totgesagt, weil viele andere ASP.NET-Varianten (ASP.NET Dynamic Data, ASP.NET MVC, ASP.NET Webpages/Webmatrix) entstanden. Dass Microsoft dieses Zugpferd aber nicht vernachlässigen will, zeigt der Konzern nun mit ASP.NET 4.5. Zentral sind hierin das Verwenden von HTML5 und CSS3 in den Webforms-Steuerelementen, zum Beispiel bietet <asp:TextBox> nun ein TextMode-Attribut mit Unterstützung für HTML5-Eingabesteuerelemente wie Phone und EMail.

Mit dem sogenannten "Model Binding" bekommt ASP.NET abermals ein neues Verfahren, mit dem sich Datenbindungsausdrücke in Vorlagen nun streng typisieren lassen (bisher war dort Eval() notwendig). Zudem kann man Methodenparameter in Code-Behind-Klassen von Webforms nun so annotieren, dass die ASP.NET-Infrastruktur daran Daten aus der ASP.NET-Umgebung, etwa Querystring, Formulardaten, Cookies oder Steuerelemente, bindet. Eigene sogenannte Value Provider Attributes sind durch Implementieren von IValueProvider möglich.

Die Startgeschwindigkeit von ASP.NET-Webanwendungen will Microsoft, durch Beschleunigung der Kompilierung beim ersten Aufruf um 35 Prozent verbessert haben. Eine weitere Leistungssteigerung kann man durch das dynamische Verkleinern und Verbinden von CSS- und JavaScript-Dateien erhalten (System.Web.Optimization).

Im Namensraum Microsoft.Web.WebSocket unterstützt ASP.NET nun den kommenden WebSocket-Standard des W3C für Nachrichten vom Webserver zum Webbrowser. Man braucht dafür allerdings einen Internet Information Server 8, der auf Windows Server "8" läuft, den es ebenfalls seit der BUILD-Konferenz als Developer Preview gibt.

Auch beim Datenzugriff schreitet die Entwicklung voran. Das ADO.NET Entity Framework 4.5 kompiliert nun zur Leistungssteigerung alle LINQ-to-Entities-Befehle – bisher musste man das selbst machen. Auch das Table-per-Type-Mapping (TPT) soll schneller laufen. Beim Mapping sind nun Enumerationen sowie die Typen Geography und Geometry möglich. Entwickler, die nach dem Code-First-Prinzip arbeiten, können nun Datenbankschemata migrieren. Bisher konnte man bei einer Schemaänderung nur alle Tabellen erst löschen, dann neu anlegen und befüllen.

Der ORM-Designer erlaubt in Visual Studio 11, mehrere Stored Procedures auf einmal als Funktionen zu importieren. Auch Stored Procedures mit mehreren verschiedenen Resultsets und Table-Valued-Funktionen sind realisierbar. Die wohl wichtigste Veränderung im Designer ist die Unterstützung mehrerer unterschiedlicher Diagramme für ein einziges Objektmodell. Bisher war die Arbeit mit großen Modellen eine Qual. Ein Teil der neuen Entity-Framework-Funktionen waren bereits als eine Vorabversion für Visual Studio 2010 verfügbar. Dazu gehören neue Funktionen für die WCF Data Services, die OData-Implementierung von Microsoft, enthalten (z. B. die Operatoren All und Any).

Auch beim "klassischen" ADO.NET tut sich noch was: Neben den erwähnten asynchronen Aufrufen gibt es Anpassungen an neue Funktionen der zukünftigen Version des SQL Server "Denali", zum Beispiel Angaben für die neue Failover-Funktion "AlwaysOn" in den Verbindungszeichenfolgen und direkte Nutzung einer .mdf-Datei via "LocalDB". Auch die in SQL Server 2008 eingeführten Sparse Columns (die leere Spalten optimiert ablegen) unterstützt ADO.NET 4.5 nun.

Die lange vermisste Übergabe von Kennwörtern an ADO.NET-Verbindungsobjekte als verschlüsselten SecureString hat Microsoft jetzt umgesetzt. Der Server Explorer von Visual Studio 11 besitzt nun einen eigenen Knoten "SQL Server" (siehe links in Abb. 2), über den man die gleiche Sicht und gleichen Funktionen für einen SQL Server erhält wie im SQL Server Management Studio.

Links in Visual Studio 11 der neue "SQL Server"-Zweig im Server Explorer, daneben ein Check-in im komplett überarbeiteten Team Explorer (Abb. 2)