TechEd Developers: IronPython for ASP.NET

Der Dotnet-Doktor  –  0 Kommentare

Microsoft hat eine Erweiterung für ASP.NET veröffentlicht, die die Nutzung von IronPython zur .NET-basierten Webserverprogrammierung ermöglicht und in vielen Szenarien eine einfachere Syntax ermöglicht.

Bei Microsoft ist ein Trend zu dynamischen Sprachen festzustellen. Neben den dynamischen Erweiterungen, die in C# 3.0 und Visual Basic 9.0 erscheinen werden, hat Microsoft vor kurzem die erste Version von IronPython, eine .NET-fähige Implementierung der dynamischen OO-Programmiersprache Python vorgestellt. Jetzt gibt es auch eine Erweiterung (Microsoft IronPython for ASP.NET), die erlaubt, ASP.NET-Webseiten mit IronPython zu entwickeln. Eine erste Vorabversion ist kostenlos verfügbar.

Das grundsätzliche Programmiermodell und Projektmodell (Visual Web Developer Web Site Model) ist gleich. IronPython-Codedateien haben die Dateiextension .py. Anstelle des App_Code-Verzeichnisses gibt es ein App_Script.  Durch die Dynamik der Sprache ergeben sich Vereinfachungen beim Zugriff auf Objektmengen (z.B. QueryString, Controls-Objektmenge) und Datenbindung (kein Eval() notwendig).

Beispiele:

C#: int i = Convert.ToInt32(Request["Name"]);
IronPython: i = int(Request.Name)

C#: TextBox t = (TextBox) Container.FindControl("Eingabefeld");
IronPython: t = Container.Eingabefeld

Laut Aussage von Microsoft ist Geschwindigkeit von IronPython for ASP.NET in vielen Szenarien vergleichbar mit der Geschwindigkeit von ASP.NET mit statischen Sprachen wie C# und VB, obwohl keine Kompilierung, sondern eine fortwährende Interpretierung stattfinden.