Einführung in Web Forms-Seiten

Mit Hilfe von Web Forms-Seiten können Sie programmierbare Webseiten erstellen, die als Benutzeroberfläche für die Webanwendung verwendet werden. Eine Web Forms-Seite zeigt dem Benutzer Informationen in einem beliebigen Browser oder einem Clientgerät an und implementiert mit Hilfe von serverseitigem Code die Anwendungslogik. Die Web Forms-Seitenausgabe kann fast jede HTTP-fähige Sprache enthalten, einschließlich HTML, XML, WML und ECMAScript (JScript, JavaScript).

Web Forms-Seiten:

  • Basieren auf der ASP.NET-Technologie von Microsoft, in der auf dem Server ausgeführter Code die Webseitenausgabe dynamisch für den Browser oder das Clientgerät generiert. Ausführliche Informationen über ASP.NET finden Sie unter Hintergrundinformationen zur ASP.NET-Technologie.
  • Kompatibel mit allen Browsern oder mobilen Geräten. Auf einer Web Forms-Seite wird automatisch der richtige browserkompatible HTML-Code für Features wie Formatvorlagen, Layout usw. angezeigt. Alternativ dazu können Sie Web Forms-Seiten entwerfen, die in einem bestimmten Browser ausgeführt werden, wie Microsoft Internet Explorer 5, und die Vorteile der Funktionen eines umfassenden Browserclients nutzen.
  • Kompatibel mit jeder von der .NET-Common Language Runtime unterstützten Sprache, einschließlich Microsoft Visual Basic, Microsoft Visual C# und Microsoft JScript .NET.
  • Basiert auf Microsoft .NET Framework. Dies bietet alle Vorteile des Framework einschließlich einer verwalteten Umgebung, Typsicherheit und Vererbung.
  • werden in Visual Studio mit leistungsstarken Tools zur schnellen Anwendungsentwicklung (RAD, Rapid Application Development) zum Entwerfen und Programmieren der Formulare unterstützt.
  • Erweiterbar mit Hilfe von Steuerelementen, die RAD-Funktionen für die Webentwicklung enthalten. Somit können umfangreiche Benutzeroberflächen schnell erstellt werden.
  • Flexibel, da vom Benutzer erstellte Steuerelemente sowie Steuerelemente von Fremdherstellern hinzugefügt werden können.

Komponenten von Web Forms

In Web Forms-Seiten ist die Benutzeroberflächenprogrammierung in zwei unterschiedliche Teile unterteilt: die visuelle Komponente und die logische Komponente. Wenn Sie bereits mit Tools wie Visual Basic und Visual C++ gearbeitet haben, werden Sie diese Unterteilung zwischen dem sichtbaren Teil eines Formulars und dem Code hinter dem Formular, der mit dem Formular interagiert, wieder erkennen.

Das visuelle Element wird als Web Forms-Seite bezeichnet. Die Seite besteht aus einer Datei, die statisches HTML oder ASP.NET-Serversteuerelemente bzw. beides enthält.

Die Web Forms-Seite fungiert als Container für den statischen Text und die Steuerelemente, die Sie anzeigen möchten. Wenn Sie den Web Forms-Designer in Visual Studio und ASP.NET-Serversteuerelemente verwenden, können Sie das Formular wie in einer Visual Studio-Anwendung entwerfen. Weitere Informationen finden Sie unter Steuerelemente, die in Web Forms-Seiten verwendet werden können.

Die Logik für die Web Forms-Seite besteht aus Code, den Sie für die Interaktion mit dem Formular erstellen. Die Programmierlogik befindet sich in einer von der Benutzeroberflächendatei separaten Datei. Diese Datei wird als Code-Behind-Datei bezeichnet und hat die Erweiterung .aspx.vb oder .aspx.cs. Die Logik in der Code-Behind-Datei kann in Visual Basic oder Visual C# geschrieben werden.

Web Forms-Dateistruktur

Die CodeBehind-Klassendateien für alle Web Forms-Seiten in einem Projekt werden in die DLL-Datei (Dynamic Link Library) des Projekts kompiliert. Die ASPX-Seitendatei wird auf eine andere Art kompiliert. Wenn der Benutzer das erste Mal nach einer ASPX-Seite sucht, generiert ASP.NET automatisch eine .NET-Klassendatei, die die Seite darstellt, und kompiliert sie in eine zweite DLL-Datei. Die generierte Klasse für die ASPX-Seite erbt von der CodeBehind-Klasse, die in die DLL-Projektdatei kompiliert wurde. Wenn ein Benutzer den Webseiten-URL anfordert, werden die DLL-Dateien auf dem Server ausgeführt, und die HTML-Ausgabe für die Seite wird dynamisch produziert. Weitere Informationen finden Sie unter Verarbeiten von Web Forms-Seiten.

Weitere Informationen über die Erstellung von Web Forms-Seiten finden Sie unter Web Forms-Codemodell.

Was können Sie mit Web Forms-Seiten erreichen?

Die Webanwendungsprogrammierung konfrontiert Sie mit Herausforderungen, die bei der Programmierung von traditionellen, clientbasierten Anwendungen normalerweise nicht auftreten. Zu diesen Herausforderungen gehören:

  • Implementieren einer umfangreichen Webbenutzeroberfläche: Das Entwerfen und Implementieren einer Benutzeroberfläche mit einem komplexen Layout, einer großen dynamischen Inhaltsmenge und vollfunktionsfähigen benutzerinteraktiven Objekten nur mit den grundlegenden HTML-Funktionen ist recht schwierig und mühsam. Insbesondere ist es schwierig, eine umfassende Benutzeroberfläche für Anwendungen zu erstellen, die auf vielen verschiedenen Browsern und Clientgeräteplattformen ausgeführt werden können.
  • Trennen von Client und Server: In einer Webanwendung handelt es sich bei Client (Browser) und Server um verschiedene Programme, die oft auf verschiedenen Computern (und sogar unter verschiedenen Betriebssystemen) ausgeführt werden. Daher nutzen die beiden Hälften der Anwendung sehr wenige Informationen gemeinsam. Sie können kommunizieren, tauschen aber normalerweise nur kleine, einfache Informationen aus.
  • Statusfreie Ausführung: Wenn ein Webserver eine Anforderung für eine Seite erhält, sucht er die Seite, verarbeitet sie, sendet sie an den Browser und verwirft dann effektiv alle Seiteninformationen. Wenn der Benutzer dieselbe Seite nochmals anfordert, wiederholt der Server die gesamte Sequenz, d. h. die Seite wird von Anfang an wieder verarbeitet. Ein Server hat also keinen Speicher für verarbeitete Seiten. Wenn daher eine Anwendung Informationen über eine Seite beibehalten muss, muss dieses Problem im Anwendungscode gelöst werden.
  • Unbekannte Clientfunktionen: In vielen Fällen können viele Benutzer mit verschiedenen Browsern auf Webanwendungen zugreifen. Browser verfügen über verschiedene Funktionen, d. h. es ist schwierig eine Anwendung zu erstellen, die in allen Browsern gleich gut ausgeführt werden kann.
  • Komplikationen beim Datenzugriff: Das Lesen von einer Datenquelle und das Schreiben in eine Datenquelle kann in traditionellen Webanwendungen kompliziert und ressourcenintensiv sein.
  • Komplikationen bei der Skalierbarkeit: In vielen Fällen erreichen Webanwendungen, die mit vorhandenen Methoden erstellt wurden, die Skalierbarkeitsziele nicht, da die verschiedenen Komponenten der Anwendung nicht in ausreichendem Maß kompatibel sind. Dies ist meistens der einzige Fehlerort für Anwendungen in einem Zyklus mit stetigem Wachstum.

Das Erfüllen dieser Anforderungen für Webanwendungen kann sehr zeitaufwendig und mühsam sein. Web Forms-Seiten und das ASP.NET-Seitengerüst stellt sich diesen Anforderungen wie folgt:

  • Intuitives, konsistentes Objektmodell: Das ASP.NET-Seitengerüst enthält ein Objektmodell, mit dessen Hilfe Sie Formulare als Einheit und nicht als separate Client- und Serverteile betrachten können. In diesem Modell können Sie das Formular auf eine intuitivere Art als in traditionellen Webanwendungen programmieren, und haben zudem die Möglichkeit, Eigenschaften für Formularelemente festzulegen und auf Ereignisse zu reagieren. Außerdem sind ASP.NET-Serversteuerelemente eine Abstraktion vom physischen Inhalt einer HTML-Seite und der direkten Interaktion zwischen Browser und Server . Im Allgemeinen können Sie Webserversteuerelemente wie Steuerelemente in einer Clientanwendung verwenden und müssen nicht über die Erstellung von HTML nachdenken, um die Steuerelemente und deren Inhalt darzustellen und zu verarbeiten.
  • Ereignisgesteuertes Programmiermodell: Web Forms-Seiten integrieren das bekannte Modell, Ereignishandler für Ereignisse zu schreiben, die entweder auf dem Client oder dem Server stattfinden, in Webanwendungen. Das ASP.NET-Seitengerüst abstrahiert dieses Modell so, dass der zu Grunde liegende Mechanismus für das Erfassen eines Ereignisses auf dem Client, das Senden dieses Ereignisses an den Server und das Aufrufen der entsprechenden Methode automatisch stattfindet und für den Benutzer, der dies implementiert, unsichtbar ist. Das Ergebnis ist eine deutliche, leicht schreibbare Codestruktur, die die ereignisgesteuerte Entwicklung unterstützt.
  • Intuitive Statusverwaltung: Das ASP.NET-Seitengerüst verwaltet den Status des Formulars und der Steuerelemente automatisch und gibt Ihnen explizite Möglichkeiten, den Status von anwendungsspezifischen Informationen zu verwalten. Dazu werden nur wenige Serverressourcen benötigt, und die Implementierung kann mit oder ohne Senden von Cookies an den Browser ausgeführt werden.
  • Browserunabhängige Anwendungen: Mit dem ASP.NET-Seitengerüst kann jegliche Anwendungslogik auf dem Server erstellt werden, wobei den Unterschieden zwischen den Browsern nicht mehr ausdrücklich im Code Rechnung getragen werden muss. Sie können jedoch noch immer die Vorteile von browserspezifischen Funktionen automatisch nutzen, indem Sie clientseitigen Code schreiben, um verbesserte Leistung und umfangreichere Clientnutzung zu bieten.
  • Unterstützung für .NET Framework-Common Language Runtime: Das ASP.NET-Seitengerüst ist eine Technologie von ASP.NET. ASP.NET ist in .NET Framework integriert, so dass das gesamte Gerüst für jede ASP.NET-Anwendung zur Verfügung steht. Die Anwendungen können in jeder mit der Common Language Runtime kompatiblen Sprache erstellt werden, einschließlich Microsoft Visual Basic, Visual C# und JScript .NET. Darüber hinaus wird der Zugriff auf Daten mit Hilfe der Infrastruktur für den Datenzugriff erleichtert, die von .NET Framework, einschließlich ADO.NET, zur Verfügung gestellt wird.
  • Skalierbare .NET Framework-Serverleistung: Mit dem ASP.NET-Seitengerüst können Sie die Webanwendung von einem Computer mit nur einem Prozessor auf ein "Webgefüge" mit einer Vielzahl von Computern sauber und ohne komplizierte Änderungen an der Anwendungslogik skalieren.

Siehe auch

Hintergrundinformationen zur ASP.NET-Technologie | Web Forms-Codemodell | Verarbeiten von Web Forms-Seiten | Exemplarische Vorgehensweise: Erstellen von Web Forms-Basisseiten | Migration in Web Forms | Exemplarische Vorgehensweise: Erstellen von behindertengerechten Webanwendungen mit Visual Basic .NET