Umsetzung einer ASPX GUI-Schicht

Da Johns Anwendung nun vollständig implementiert ist, kann die letzte Phase der Implementierung abgeschlossen werden: Toms Präsentationsschicht. Toms Anwendung ist mit einem komplexeren Front-End ausgestattet, das einen Warenkorb sowie eine dynamische Seitengenerierung umfasst. Am Ende dieses Artikels werden zwei vollständig implementierte und funktionale Anwendungen zur Verfügung stehen.


Vorausgegangene Artikel
  1. Web Services: Entwicklung eines Szenarios
  2. Web Services B2B-Implementierung: Komponenten, Ausnahme-Behandlung und Logging
  3. Web Services: Datenbank-Design
  4. Implementierung der Business-Logik
  5. Implementierung von B2B Web Services: Toms Anwendung
  6. Web Services: Johns ASPX GUI-Schicht

Die Grundlagen schaffen

Bevor man beginnt, die Anwendungsfälle zu implementieren, müssen bestimmte Basisstrukturen für das Front-End erstellt werden. Toms Anwendung wird dieselben drei Basiskomponenten benutzen wie die Anwendung von John: ein Stylesheet, spezifische Navigationskontrollen und einen ASPX-Identifier. Zusätzlich sind in Toms Anwendung separate Unterordner für die ASPX-Seiten, ein Stateful-Session-Objekt und eine spezifische Fehlermeldungsseite erforderlich.

Man öffnet Toms ASP.NET-Lösung und ersetzt den Inhalt der standardmäßigen Styles.css-Datei durch den Inhalt aus Listing A (Link zu Styles.css). Toms Stylesheet weist die gleiche Grundstruktur auf wie das von John, es fügt jedoch andere Farben und Fonts hinzu.

Als Nächstes fügt man die ASPX-Identifier-Klasse hinzu. Dazu klickt man mit der rechten Maustaste auf Toms ASP.NET-Projekt und wählt Add | Add Class (Hinzufügen | Klasse hinzufügen). Die neue Klasse nennt man WebPageNames.vb. Dann kopiert man den Inhalt aus Listing B in diese Klasse. Genau wie bei Johns Anwendung wird jede ASPX-Seite in der Anwendung durch eine statische Konstante identifiziert, um hart kodierte Seitenreferenzen zu vermeiden.

Um eine Trennung zwischen den öffentlichen und den verborgenen Bereichen der Website zu schaffen, muss man zwei Unterordner erstellen. Dazu klickt man mit der rechten Maustaste auf Toms Anwendung und wählt Add | New Folder (Hinzufügen | Neuer Ordner). Diesen Vorgang muss man zweimal wiederholen, um zwei Ordner mit den Bezeichnungen „public“ und „private“ einzurichten. Seiten, die nur für Toms registrierte Kunden verfügbar sind, werden in dem privaten Ordner platziert, während alle anderen Seiten in dem öffentlichen Ordner landen.

Da Toms Anwendung einen einfachen Warenkorb ausführt, muss man einige grundlegende Funktionen zur Statusverwaltung in die Anwendung integrieren. Anstatt mehrere Variablen in das Session-Objekt zu packen, fasst man die benötigten Variablen in einer neuen Klasse zusammen und platziert eine einzelne Instanz dieser Klasse in die Session, um eine übersichtlichere Verwaltung zu ermöglichen.

Zur Implementierung dieser Klasse klickt man mit der rechten Maustaste auf Toms Anwendung und wählt Add | Add Class (Hinzufügen | Klasse hinzufügen). Die neue Klasse nennt man SessionObj.vb und der Inhalt aus Listing C wird in diese Klasse kopiert.

Die SessionObj-Klasse dient zur Verwaltung von Informationen, die einzelne Kunden sowie die Bücher betreffen, die diese ihrem Warenkorb hinzugefügt haben. Man fügt den folgenden Code zu der Datei Global.asax hinzu, um ein neues Session-Objekt für jeden Benutzer zu erstellen, sobald dieser auf die Anwendung zugreift:

In die Navigationsleiste wird eine einfache Reihe aus Buttons implementiert, die oben auf jeder Seite angezeigt werden und dem Kunden das Navigieren in der Anwendung ermöglichen. Ein kleiner Zusatz zu der Navigationsleiste zeigt an, wie viele Objekte sich jeweils im Warenkorb des Benutzers befinden. Die Variable NumItems in der SessionObj-Klasse übernimmt es, die Anzahl aller im Warenkorb des Kunden befindlichen Bücher zu zählen.

Zum Hinzufügen der Navigationsleiste muss man mit der rechten Maustaste auf den öffentlichen Ordner klicken und Add | Add Web User Control (Hinzufügen | Web-Benutzersteuerelement hinzufügen) wählen. Man nennt dieses Steuerelement NavBar.ascx und fügt den HTML-Code aus Listing D zu der HTML-Ansicht des Steuerelements hinzu sowie den VB.NET-Code aus Listing E zur Code-Behind-Datei.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

KI-gestütztes Programmieren bringt IT-Herausforderungen mit sich

OutSystems-Studie: 62 Prozent der Befragten haben Sicherheits- und Governance-Bedenken bei Softwareentwicklung mit KI-Unterstützung.

6 Tagen ago

Studie: Ein Drittel aller E-Mails an Unternehmen sind unerwünscht

Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…

1 Woche ago

HubPhish: Phishing-Kampagne zielt auf europäische Unternehmen

Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…

1 Woche ago

1. Januar 2025: Umstieg auf E-Rechnung im B2B-Geschäftsverkehr

Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.

1 Woche ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…

1 Woche ago

Erreichbarkeit im Weihnachtsurlaub weiterhin hoch

Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…

2 Wochen ago