ASP.NET

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
ASP.NET
Logo
Basisdaten
Entwickler Microsoft
Aktuelle Version 4.5[1]
(15. August 2012)
Betriebssystem ab Windows 2000
Kategorie Web-Entwicklung
Lizenz Proprietäre Software
Deutschsprachig ja
www.asp.net/de

ASP.NET (Active Server Pages .NET) ist ein serverseitiges Verfahren von Microsoft zum Erstellen dynamischer Webseiten, Webanwendungen und Webservices auf Basis des Microsoft-.NET-Frameworks. Seit 2002 ist ASP.NET der Nachfolger von ASP (Active Server Pages).

ASP.NET kommt auf ca. 18,7 % aller Websites als serverseitige Programmiersprache zum Einsatz[2] und liegt damit nach PHP (81,2 %) auf dem zweiten Platz, der am häufigsten verwendeten Sprache zum Erstellen von Websites, und vor dem drittplatzierten Java (2,7 %).

Aufbau von ASP.NET[Bearbeiten]

Grundlegender Aufbau von ASP.NET
Überblick über die Funktionsweise von ASP.NET

ASP.NET baut auf dem .NET-Framework auf und stellt eine Methode dar, um .NET-Anwendungen in IIS oder anderen mit ASP.NET kompatiblen Webservern zu verwalten ("hosting"). ASP.NET stellt hierbei Klassen zur Verfügung, die allen Webanwendungen gemeinsam sind, wie etwa die Authentifizierung und Autorisierung von Benutzern. Das wichtigste Element ist hierbei die HTTP-Laufzeitumgebung, die HTTP-Anfragen bearbeitet.

Mit ASP.NET können Webanwendungen in von .NET unterstützten Sprachen (theoretisch alle CLR-kompatiblen Sprachen) erstellt werden, gebräuchlich sind nahezu ausschließlich objektorientierte Sprachen wie C# und VB.NET. Eingeschränkt wird die Sprachwahl meistens nur von der jeweiligen Entwicklungsumgebung. ASP.NET ist somit keine Programmiersprache, sondern eine Bündelung von Techniken. ASP.NET-Sprachen werden nicht interpretiert, sondern in CIL übersetzt und kompiliert.

Auf die ASP.NET-Plattform setzen die jeweiligen Verfahren, wie ASP.NET WebForms, ASP.NET AJAX, ASP.NET MVC, ASP.NET Dynamic Data, ASP.NET WebAPI und ASP.NET SignalR auf, welche jeweils als HTTP-Handler implementiert sind.

ASP.NET Web Forms[Bearbeiten]

Die Web Forms[3] bilden den Grundbaustein der Entwicklung von Webinhalten mit ASP.NET in seiner klassischen Form. Web Forms sind in Dateien mit der Dateiendung .aspx enthalten. Die ASPX-Dateien enthalten typischerweise statisches (X)HTML Markup sowie die "Web Controls" und "User Controls", die gemäß der serverseitig hinterlegten Logik auf dem Webserver verarbeitet und als dynamischer (X)HTML-Code ausgegeben werden. Beispiele für Web Controls, die Microsoft standardmäßig mitliefert, sind ein Kalendercontrol oder die Gridview (Tabellenansicht von Daten).

Zusätzlich können dynamische Code-Inhalte, die vom Server ausgeführt werden sollen, innerhalb einer ASPX-Datei in der Form <% -- dynamic code -- %> hinterlegt werden. Diese Art der Einbettung ähnelt stark den Konstrukten anderer Web-Programmiersprachen wie PHP, JSP und ASP. Allerdings sollte der Entwickler möglichst auf im HTML-Code verschachtelten Programmcode verzichten, da der Compiler diesen Code erst bei Ausführung auf dem Webserver überprüft. Der Code separat verfasster "Code-Behind"-Dateien (siehe unten) wird dagegen vom Compiler vollständig überprüft, was eine höhere Laufzeitsicherheit erzielt.

Mit dem ASP.NET Framework 2.0 veröffentlichte Microsoft den neuartigen Ansatz des "Code-Behind"-Modells. Dabei verbleiben statische Inhalte in der ASPX-Datei, während der dynamische Code in eine Datei des Typs .aspx.vb oder .aspx.cs respektive .aspx.fs ausgelagert wird[4]. Der Dateityp ist dabei von der verwendeten .NET-Sprache abhängig. Entwickler, die nicht mit dem "Code-Behind"-Ansatz arbeiten möchten, können die Funktion Render überschreiben und sich hier (vollkommen unabhängig von der Design-Ansicht) HTML selbst erzeugen.

Code-Behind-Modell[Bearbeiten]

Microsoft empfiehlt die Nutzung des "Code-Behind"-Ansatzes für die dynamischen Code-Anteile. Die "Code-Behind"-Dateien tragen üblicherweise die Dateiendung .aspx.cs oder .aspx.vb. Der Dateiname der ASPX-Datei entspricht dabei stets genau dem Namen der "Code-Behind"-Datei, unterschiedlich sind nur die Dateinamensendungen. Microsoft Visual Studio und andere IDEs geben diese Art der Entwicklung standardmäßig vor. Der Code einer solchen "Code-Behind"-Datei wird bereits vor Aufruf der entsprechenden Seite kompiliert. Dies senkt die Fehlerrate gegenüber Interpretersprachen, bei denen die Überprüfung auf Fehler erst zur Laufzeit stattfindet. In der "Code-Behind"-Datei hat der Entwickler die Möglichkeit, auf unterschiedlichste Ereignisse ("events") im Lebenszyklus einer ASP-Web-Forms-Web-Seite zu reagieren, darunter nicht nur z.B. das Laden der Webseite, sondern auch Ereignisse, die sich aus Benutzerinteraktionen mit Web-Formular-Inhalten ergeben, so etwa der Klick auf eine Schaltfläche.

Das Programmmodell (mit Events, die von Controls ausgelöst werden) ist dem von .NET-Applikationen sehr ähnlich, somit ist für Entwickler, die schon Applikationen für das .NET Framework geschrieben haben, die Nutzung von ASP.NET (und C#/VB.NET) leicht möglich. Meist können für Windows-Applikationen programmierte Funktionen oder Klassen sogar ohne Änderung in ASP.NET weiterverwendet werden.

Mit diesem Ansatz unterscheidet sich ASP.NET deutlich vom klassischen ASP. Eine erste Trennung von Code zur Darstellung und den Inhalten wird dadurch erreicht. Ähnlich der Trennung zwischen "View" und "Controller" im MVC-Muster erlaubt diese Trennung eine bessere arbeitsteilige Entwicklung zum Beispiel durch eine Aufteilung zwischen Webdesigner, der die ASPX-Datei bearbeitet, und Programmierer, der die "Code-Behind"-Datei erstellt. Die neuere Komponente ASP.NET MVC betont konzeptionell in noch viel stärkerer Form diese Art des Separation of Concerns.

Directives[Bearbeiten]

Mit Directives ist es möglich, in einer ASPX-Datei zu deklarieren, wie ASP.NET diese Seite verarbeiten soll.[5] Die am Häufigsten genutzte Directive ist <%@ Page %>. Hiermit lassen sich diverse Einstellungen vornehmen, allen voran die Angabe, in welcher Programmiersprache der dynamische Inhalt programmiert ist. Beispielsweise enthält das Code-Beispiel in diesem Artikel die <%@ Page %> Directive in der ersten Zeile.

User Controls[Bearbeiten]

User Controls kapseln bestimmte Abschnitte aus Seiten in einer eigenen Datei mit der Endung .ascx. Diese ASCX-Dateien werden innerhalb des ASP.NET-Projekts registriert und können auf ASPX-Seiten genauso verwendet werden wie die vordefinierten "Web Controls". Die ASCX-Dateien enthalten typischerweise (X)HTML-Code sowie serverseitige Controls. Ein "User Control" wird kompiliert, wenn die Seite, auf der das Control eingebunden wird, aufgerufen wird. Das "User Control" wird für mögliche nachfolgende Anfragen im Speicher gehalten. "User Controls" bringen ihre eigenen Ereignisse ("events") mit, die ebenfalls vom Entwickler individuell behandelt werden können. Alle "User Controls" sind daran gebunden, von einer ASPX-Seite aufgerufen zu werden. Der direkte Aufruf eines "User Controls" im Webbrowser ist nicht möglich.

Individualisierte Controls[Bearbeiten]

Programmierer können selbstdefinierte Controls ("Custom Controls") in ihren ASP.NET-Webanwendungen definieren. Im Gegensatz zu "User Controls" werden "Custom Controls" nicht in einer ASCX-Datei definiert, sondern ihr Code wird in eine Dynamic Link Library-Datei (DLL) kompiliert. Hat er solche "Custom Controls" einmal definiert, kann der Entwickler diese in unterschiedlichen Webanwendungen und Visual Studio-Projekten nutzen.

Diese Möglichkeiten, eigene Controls für ASP.NET zu entwickeln, bilden die Grundlage für eine Vielzahl an Controls von Drittanbietern, die frei oder kostenpflichtig zur Verfügung stehen. Es existiert ein mittlerweile sehr umfangreicher Markt, über den eine Vielzahl von wiederverwendbaren Controls frei oder kommerziell erhältlich sind. Komplexe Anforderungen brauchen daher häufig nicht selbst entwickelt zu werden.

View State[Bearbeiten]

ASP.NET unterstützt mit der ViewState-Technik eine erweiterte Möglichkeit, Speicherinhalte zwischen einzelnen Seitenaufrufen zu erhalten. Während mit der Session-State-Technik bei Active-Server-Pages bisher nur eine von den Seitenaufrufen losgelöste Speicherverwaltung existierte, hat der Entwickler bei ASP.NET die Möglichkeit, Speicherinhalte in einer ViewState-Collection abzulegen, um beim nächsten Seitenaufruf darauf zuzugreifen. Im Gegensatz zum Session-State wird der ViewState nicht auf dem Server, sondern in der zurückgegebenen Seite gespeichert.

Mit der von ASP.NET unterstützten ViewState-Technik behalten Controls ihren Status auch über aufeinander folgende Seitenaufrufe hinweg. Das nimmt Entwicklern die Arbeit ab, dies selbst umzusetzen. Ein ähnliches Konzept verfolgt Sun mit den JavaServer Faces (JSF).

WebParts[Bearbeiten]

Hauptartikel: WebPart

Zusätzlich bietet ASP.NET das Konzept der WebParts. Mit diesen können Intranets erstellt werden, in denen jeder Benutzer selbst konfiguriert, was er an welcher Stelle der Seite sehen will.

Code-Beispiel[Bearbeiten]

ASPX-Datei[Bearbeiten]

Der nachfolgende Beispielcode erzeugt bei Ausführung auf dem mitgelieferten Webserver von Visual Studio eine grundlegende Ausgabe am Bildschirm; diese folgt den Standardinhalten, die Microsoft beim Anlegen einer neuen ASPX-Seite (in ASP.NET 4) generiert.

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeBehind="Default.aspx.cs" Inherits="ASP.NET_Beispiel._Default" %>
 
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
  <source lang="XML">
    <h2>
        Welcome to ASP.NET!
    </h2>
    <p>
        To learn more about ASP.NET visit <a href="http://www.asp.net" title="ASP.NET Website">www.asp.net</a>.
    </p>
    <p>
        You can also find <a href="http://go.microsoft.com/fwlink/?LinkID=152368&amp;clcid=0x409"
            title="MSDN ASP.NET Docs">documentation on ASP.NET at MSDN</a>.
    </p>
  </source>
</asp:Content>

Code-Behind-Datei[Bearbeiten]

Zu dem gezeigten ASP-Code gehört der nachfolgend zitierte Quellcode, der in der "Code-Behind"-Datei gespeichert ist. In diesem Fall kommt die Programmiersprache C# zum Einsatz, VB.NET ist dazu wie beschrieben eine gängige Alternative.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace ASP.NET_Beispiel
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
 
        }
    }
}
Autogenerierte ".designer.cs"-Datei

Ebenfalls erzeugt wird eine Default.aspx.designer.cs, die stets autogeneriert wird anhand der ASPX-Vorlage. Da der Programmierer an dieser Datei nichts ändert (bzw. seine Änderungen überschrieben würden), ist deren Quelltext hier nicht gezeigt.

ASP.NET MVC[Bearbeiten]

Das ASP.NET MVC Framework ist eine Implementierung des MVC-Patterns und erlaubt es, dynamische Webseiten besonders klar in die drei Bereiche Model (Datenmodell), View (Ansicht) und Controller (Steuerung) zu gliedern. Dies wird durch die zugrundeliegende Architektur eingefordert und ermöglicht klares Separation of Concerns. MVC unterstützt darüber hinaus auch in besonderer Weise den Ansatz der testgetriebenen Entwicklung, da mit ASP.NET MVC für die Unit Tests kein Webserver benötigt wird (im Gegensatz zur Situation bei WebForms)[6].

Ursprünglich wurde ASP.NET MVC als Erweiterungsmodul für Webbrowser ("Plugin") ausgeführt, welches auf WebForms aufsetzt. Mittlerweile ist ASP.NET MVC jedoch ein fester Bestandteil des ASP.NET-Frameworks und von WebForms unabhängig.

WebAPI[Bearbeiten]

Das WebAPI ist eine Variante von ASP.NET MVC und ermöglicht es REST-Web-Dienste zu implementieren. Daten werden hierbei in Form von JSON, XML oder OData übertragen.

Ein Javascript-Skript auf einer Webseite kann mit Hilfe von AJAX oder AJAJ auf diese Services zugreifen und damit Daten im Hintergrund übertragen. Dies ermöglicht die Erstellung von hochdynamischen Rich-Client-Webseiten.

SignalR[Bearbeiten]

SignalR überträgt Daten zwischen dem Client und dem Server mit Hilfe von HTML5 WebSockets. Wenn der Browser des Clients WebSockets nicht beherrscht, verwendet SignalR andere Methoden der Datenübertragung (engl.: Fallback). SignalR vereinfacht damit die Implementierungen von Echtzeitanwendungen wie Chat oder Videokonferenzen.

Entwicklungsumgebungen[Bearbeiten]

Tool unterstützte ASP.NET Version Lizenz Plattform
Microsoft Visual Studio 2012 2.0, 3.5, 4.0, 4.5 kommerziell Windows
Microsoft Visual Studio 2010 2.0, 3.5, 4.0 kommerziell Windows
Microsoft Visual Studio 2008 2.0, 3.5 kommerziell Windows
Microsoft Visual Studio 2005 2.0 kommerziell Windows
Visual Web Developer Express 2010 4.0 kostenlos Windows
Visual Web Developer Express 2008 2.0, 3.5 kostenlos Windows
SharpDevelop 1.1, 2.0, 3.5, 4.0, 4.5 open-source Windows
MonoDevelop 1.1, 2.0 open-source Windows, hauptsächlich Linux, BSD
Embarcadero Delphi kommerziell Windows
Borland C# Builder kommerziell Windows
Microsoft WebMatrix kostenlos Windows

Nur noch von historischem Interesse ist das von Microsoft unterstützte Community-Projekt ASP.NET Web Matrix, eine Entwicklungsumgebung für ASP.NET 1.0 und 1.1. Für neuere ASP.NET-Versionen empfiehlt Microsoft stattdessen den Einsatz von Visual Web Developer Express als kostenloser Entwicklungsumgebung oder das für Einsteiger geeignete Microsoft WebMatrix.[7][8]

Ergänzende Technologien[Bearbeiten]

SOAP Extensions[Bearbeiten]

Das ASP.NET SOAP Extension Framework ermöglicht es ASP.NET-Komponenten, SOAP-Nachrichten zu verarbeiten. Für die Erstellung von und die Verbindung mit SOAP-Webservices empfiehlt sich jedoch der Einsatz der Windows Communication Foundation (WCF).

Mono[Bearbeiten]

Im Zusammenhang mit Linux ist das Mono-Projekt hervorzuheben, das ASP.NET (bzw. das .NET-Framework ganz allgemein) plattformunabhängig macht. Derzeit sind ASP.NET 2.0, ASP.NET MVC und ASP.NET AJAX implementiert.[9]

Silverlight als Ergänzungsoption[Bearbeiten]

In Ergänzung zu den etablierten Verfahren, auf die ASP.NET zurückgreift – also HTML, CSS und JavaScript – hat Microsoft Silverlight entwickelt.

Silverlight (vormals WPF/E) ist ähnlich Flash ein Browserplugin, das die Restriktionen von HTML zu umgehen versucht. Im Gegensatz zu Flash wird allerdings der Inhalt (Oberfläche, Animation oder Skript) des Applets in XML zum Browser geschickt (WPF, Windows Presentation Foundation). Dies hat zur Folge, dass solche Seiten auch problemlos mit serverseitigem Code generiert werden können, wenngleich hierfür Programme (Expression Blend) verwendet werden.

Wie bei ASP.NET ist auch die Silverlight-Entwicklung im SDK Microsoft Visual Studio die von Microsoft empfohlene Art der Programmierung.

Moonlight ist die Entsprechung von Silverlight im Mono-Projekt.

Webserver[Bearbeiten]

  • Microsoft Visual Studio .NET und Visual WebDeveloper Express enthalten ab der Version 2005 einen eigenen Webserver, weshalb zum Entwickeln mit diesen Produkten kein IIS mehr benötigt wird.
  • Internet Information Services (IIS 5.0/6.0/7.0) ab Windows 2000 (für Windows NT 4 und älter, sowie für Windows 9x gibt es keine Unterstützung). Im Gegensatz zu den IIS der Version 5 ist ASP.NET unter IIS 6 ab Windows Server 2003 direkt implementiert, wodurch deutliche Leistungsverbesserungen erreicht werden konnten. Die IIS sind – in eingeschränkter Form – auch in manchen nichtprofessionellen Versionen von Windows enthalten (Windows XP Professional, Vista ab Edition Home Premium).
  • Apache-Webserver Mit den Apache-Modulen mod_aspdotnet und mod_mono kann ASP.NET in den Apache-Webserver eingebunden werden.[10] Diese funktioniert auch unter Linux oder BSD.
  • XSP-Webserver (Teil des Mono-Projektes). Dieser Server steht für Windows und Linux zur Verfügung und kann über das Apache-Modul mod_mono an den Apache-Webserver angebunden werden. XSP ist in C# geschrieben, steht unter einer Open Source-Lizenz und unterstützt ASP.NET 2.0 (ohne Webparts).
  • Cassini-Webserver. Dieser Webserver wurde von Microsoft als schlankes Beispielprogramm zur Verfügung gestellt und soll Entwicklern Einblicke in die Funktionsweise des "ASP.NET Hosting" geben. Cassini ist in C# implementiert und steht unter einer Shared-Source-Lizenz.

Vorteile[Bearbeiten]

  • Da das .NET-Framework selbst viele Funktionen zur Verfügung stellt, sind viele Anforderungen (wie etwa Bildbearbeitung oder XML-Verarbeitung) im Gegensatz zu beispielsweise PHP ohne Installation von zusätzlichen Libraries möglich.
  • Durch die Abstraktion der auf einer Webseite verwendeten Funktionalitäten (von Textbox über Buttons bis vollständigen Kalender-Control) in Servercontrols können browserunabhängige Webseiten erstellt werden. Zusätzlich kann mit den CSS Friendly Adaptors auf den generierten HTML-Code (auch browserspezifisch) von Standardcontrols Einfluss genommen werden, so dass diese standardkonformes HTML erzeugen, das etwa keine Tabellen zur Layoutgestaltung verwendet. Durch die Abstraktion kann zum Beispiel eine vollständige Rechteverwaltung (User/Roles) – mitsamt Nutzeranmeldung, „Passwort vergessen“, und Ähnlichem – fast ohne selbstgeschrieben Code, zumindest aber mit vorgefertigten Klassen in die eigene Seite implementiert werden. Auch ein Schutz von Dateien kann damit implementiert werden.

Nachteile[Bearbeiten]

  • Mit ASP.NET ist man de facto an einen unter Betriebssystemen der Firma Microsoft laufenden Server gebunden. Es gibt zwar freie .NET (und ASP.NET)-Implementierungen, diese sind aber (noch) nicht hundertprozentig kompatibel, und hinken daher neuen .NET-Versionen immer zumindest einige Monate hinterher. Weil jedoch PHP mit Abstand die meistverwendete Skriptsprache für Webprogrammierung ist, haben sich viele Webhoster, speziell im Bereich "Shared Hosting", eher auf PHP/MySQL-Hosting auf Linux-Plattformen konzentriert. Dies schränkt die Wahlfreiheit beim Hosting ein.
  • Da es sich um proprietäre Verfahren handelt, werden in aller Regel Lizenzgebühren für das Serverbetriebssystem fällig. Für die Entwicklungsumgebung gilt dies auch, sofern sich der Programmierer nicht auf die funktionsreduzierten freien Versionen von Visual Studio beschränken möchte.

Versionsgeschichte[Bearbeiten]

ASP.NET trat 2002 mit der ersten Version die Nachfolge des in die Jahre gekommenen ASP (Active Server Pages) an, hat aber heute außer dem Namen nicht mehr viel mit der alten Technologie zu tun. ASP.NET ist seit 2002 in der Version 1.0 „final“. Seit 28. Oktober 2005 gibt es die fertige Version von ASP.NET 2.0. Mit ASP.NET 2.0 wird wesentlich weniger Code (laut Microsoft bis zu 70 Prozent)[11] benötigt, um eine dynamische Web-Site zu erstellen. Mit Version 3.5 wurde ASP.NET um Unterstützung für Ajax und LINQ erweitert. Im Januar 2012 gab Microsoft die Vorab-Version von ASP.NET 4.01 zum Herunterladen frei. Die aktuelle Version 4.5 erschien zeitgleich mit der Version des .NET-Frameworks am 15. August 2012.

Version korrespondierende Visual-Studio-Version Veröffentlichung
Ältere Version; nicht mehr unterstützt: 1.0 Microsoft Visual Studio .NET Januar 2002
Ältere Version; nicht mehr unterstützt: 1.1 Microsoft Visual Studio .NET 2003 April 2003
Ältere Version; nicht mehr unterstützt: 2.0 Microsoft Visual Studio 2005 November 2005
Ältere Version; nicht mehr unterstützt: 3.0 n/a November 2006
Ältere Version; nicht mehr unterstützt: 3.5 Microsoft Visual Studio 2008 November 2007
Ältere Version; noch unterstützt: 4.0 Microsoft Visual Studio 2010 April 2010
Aktuelle Version: 4.5 Microsoft Visual Studio 2012 August 2012
Vorabversion: vNext Microsoft Visual Studio 14 CTP März 2014
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

Zukunft[Bearbeiten]

Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Microsoft hat in den Jahren 2010 und 2011 die Entwicklung des MVC-Plugins vorangetrieben (Release 3) und ASP.NET 4.0 vorgestellt. Beim MVC-Plugin sind Einflüsse neuerer Web-Frameworks wie "Ruby on Rails" anhand von Ähnlichkeiten in den Paradigmen (beispielsweise Scaffolding) deutlich erkennbar.

Über Zukunftsausblicke betreffs ASP.NET schrieb Schwichtenberg in der Online-Ausgabe Heise Developer im Rückblick auf die Microsoft Professional Developer Conference 2009 in Los Angeles:

„Scott Hunter aus der Entwicklungsmannschaft präsentierte für den Nachfolger von ASP.NET 4.0 einige Ideen. Dazu gehören die Unterstützung für HTML 5, CSS Sprites, Datenzugriff nach dem "Active-Record"-Prinzip sowie zahlreiche Hilfsklassen, die typische Aufgaben wie Hintergrundaufgaben und das Hochladen von Dateien verbessern. Immer noch nicht gezeigt wurden die seit langem erwarteten Client-Steuerelemente, die mit JavaScript genauso arbeiten wie die Server-Steuerelemente mit .NET-Code.“[12]

Literatur[Bearbeiten]

Zur aktuellen Version[Bearbeiten]

  •  Matthew MacDonald: Beginning ASP.NET 4.5 in C#. Apress, 30. August 2012, ISBN 978-1-4302-4251-2.
  •  Adam Freeman, Matthew MacDonald, Mario Szpuszta: Pro ASP.NET 4.5 in C#. Apress, 10. Juli 2013, ISBN 978-1-4302-4254-3.
  •  Adam Freeman: Pro ASP.NET MVC 4. Apress, 20. Dezember 2012, ISBN 978-1-4302-4236-9.
  •  Jamie Kurtz: ASP.NET MVC 4 and the Web API: Building a REST Service from Start to Finish. Apress, 30. Januar 2013, ISBN 978-1-4302-4977-1.

Zu älteren Versionen[Bearbeiten]

  • Holger Schwichtenberg: Microsoft ASP.NET 4.0 mit Visual C# 2010. Microsoft Press Deutschland, Unterschleißheim 2011, ISBN 978-3-86645-530-6.
  • Jana Frank, Patrick A. Lorenz: ASP.NET 3.5 mit AJAX. Carl Hanser Verlag, München 2008, ISBN 3-446-41199-2.
  • Chris Hart, John Kauffman, Dave Sussman and Chris Ullman: Beginning ASP.NET 2.0. Wiley Publishing, Inc., 2006, ISBN 0-7645-8850-8 (englisch).
  • Hannes Preishuber: ASP.NET 2.0 Crash Kurs. Microsoft Press, 2006, ISBN 3-86063-988-9.
  • Holger Schwichtenberg: ASP.NET 2.0 – Das Entwicklerbuch. Microsoft Press, 2006, ISBN 3-86063-544-1 (VB) und ISBN 3-86063-546-8 (C#).
  • Christian Wenz, Andreas Kordwig, Christian Trennhaus: Jetzt lerne ich ASP.NET. Markt und Technik, Oktober 2004, ISBN 3-8272-6813-3.

Weblinks[Bearbeiten]

 Wikibooks: Websiteentwicklung mit ASP.NET – Lern- und Lehrmaterialien

Einzelnachweise[Bearbeiten]

  1. ASP.NET 4.5 (englisch)
  2. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatUsage of server-side programming languages for websites. Abgerufen am 7. Oktober 2013.
  3. Staff: Overview of ASP.NET and Web Forms, Microsoft. 2001. Abgerufen am 5. Juni 2011. 
  4. Code Behind vs. Code Inline. In: Microsoft .NET Framework. Microsoft. Abgerufen am 22. November 2010.
  5. ASP.NET Web Page Syntax Overview. In: Microsoft .NET Framework. Microsoft. Abgerufen am 22. November 2010.
  6. [1]
  7. [2]
  8. [3]
  9. ASP.NET
  10. mod_aspdotnet, sourceforge.net, zugegriffen: 23. Mai 2012
  11. webplatform.mspx
  12. [4]