ASP.NET-Applikationen unter Ubuntu testen
Mit den Active Server Pages .NET (ASP.NET) kann man Webanwendungen auf Basis des .NET-Frameworks von Microsoft mit Sprachen wie C# oder VB.NET entwickeln. Dabei kann man theoretisch auch andere Sprachen verwenden, sie müssen nur zur Common Language Runtime (CLR), der Laufzeitumgebung von .NET, kompatibel sein.
Der Beitrag OpenSuse mit ASP.NET-Unterstützung von Patrick Schmid (compr00t) hat mich auf die Idee gebracht, ASP.NET-Anwendungen, die ich z.B. in VB.NET entwickel, unter Ubuntu zu testen. Der Aufbau der Testumgebung ist Dank Mono recht einfach:
sudo apt-get install mono-xsp2 asp.net2-examples mono-vbnc |
XPS2 ist ein einfacher in C# geschriebener Webserver für ASP.NET 2.0, die ASP.NET2-Beispiele installiere ich, um zu schauen, ob die Testumgebung läuft, und Mono-vbnc als VB.NET-Compiler. Will man den C#-Compiler in Mono installieren, benötigt man mono-gmcs
. Um den Webserver mit den soeben installierten Demos zu starten, gibt man folgenden Befehl im Terminal ein:
xsp2 --root /usr/share/asp.net2-demos/ |
Wenn alles glatt läuft, erhält man folgende Ausgabe:
xsp2 Listening on address: 0.0.0.0 Root directory: /usr/share/asp.net2-demos Listening on port: 8080 (non-secure) Hit Return to stop the server. |
Jetzt kann man im Web-Browser schauen, ob bei der Installation wirklich alles gut gegangen ist, in dem man die Adresse http://localhost:8080/ aufruft, und das Beispiel hoffentlich betrachten kann.
Um eigene Anwendungen zu testen, legt man einen Ordner an, z.B. ASP.NET im Home-Verzeichnis, und speichert die Datei index.aspx mit folgendem Inhalt im Unterordner HalloWelt ab:
<!-- index.aspx --> <%@ Page Language="VB" Debug="True" Strict="True" %> <script runat="server"> Sub Page_Load (ByVal Sender As Object, ByVal E As EventArgs) Dim strText As String strText = "Hallo Welt!" myTitle.InnerText = strText myP.InnerText = strText End Sub </script> <html> <head> <title id="myTitle" runat="server" ></title> </head> <body> <p id="myP" runat="server"></p> </body> </html> |
Dabei muss man auf die genaue Schreibweise, sowie Groß- und Kleinschreibung achten, ansonsten hat man am Ende eine Fehlermeldung wie „Server Error in ‚/‘ Application“:
Der Webserver XPS2 wird jetzt mit einem anderen Wurzelverzeichnis gestartet:
xsp2 --root /home/christian/ASP.NET/HalloWelt |
Nach einem erneuten Aufruf der Adresse http://localhost:8080/ sollte im Webbrowser „Hallo Welt!“ stehen und das richtige Testen kann beginnen.
Geschrieben in Gnu/Linux