Nicht aus der Schweiz? Besuchen Sie lehmanns.de
ASP.NET Shortcut -  Patrick A. Lorenz

ASP.NET Shortcut (eBook)

eBook Download: PDF
2002 | 1. Auflage
225 Seiten
Carl Hanser Fachbuchverlag
978-3-446-22397-4 (ISBN)
Systemvoraussetzungen
19,99 inkl. MwSt
(CHF 19,50)
Der eBook-Verkauf erfolgt durch die Lehmanns Media GmbH (Berlin) zum Preis in Euro inkl. MwSt.
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
Shortcut-Tipps für ASP.NET-Profis

Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-Programmierung bekannte Konzepte wurden dabei elegant auf das Internet übertragen. Wie leistungsfähig Web-Anwendungen sein können, zeigt dieser Shortcut, der selbst eingefleischten Profis noch Tipps zu ASP.NET liefert.

Der Autor

Patrick A. Lorenz, als Medienproduzent in Freiburg tätig, beschäftigt sich seit rund vier Jahren als Entwickler im Webumfeld intensiv mit der ASP-Technologie. Daneben ist er Autor diverser Publikationen rund um .NET und Referent auf Fachkonferenzen.       

Inhalt 6
Vorwort 12
1 Einführung 14
1 Einführung 16
1.1 Wer Sie sind 16
1.2 Was Sie erwarten dürfen 16
1.3 Was Sie brauchen 17
1.4 Wie Sie Tipparbeit sparen 17
1.5 Worauf Sie achten sollten 17
1.6 Wie Sie Kontakt aufnehmen können 18
2 Basics 20
2 Basics 22
2.1 Was ist ASP.NET? 22
2.2 Struktur einer Web-Applikation 22
2.2.1 Anlage einer neuen Web-Applikation 23
2.3 Aufbau einer ASP.NET-Seite 23
2.3.1 Eine einfache Seite 24
2.3.2 Eine dynamische Seite 25
2.4 Das ASP.NET-Objektmodell 26
2.4.1 Die Klasse Page 27
2.4.2 Die Klasse HttpRequest 27
2.4.3 Die Klasse HttpResponse 29
2.4.4 HttpServerUtility 30
2.5 Direktiven 31
2.5.1 Die @Page-Direktive 31
2.5.2 Die @Import-Direktive 32
3 Web-Formulare 34
3 Web-Formulare 36
3.1 Basics 36
3.1.1 HTML Server Controls versus Web Controls 36
3.1.2 Postback 37
3.1.3 Persistenz 37
3.1.4 Objekthierarchie 38
3.2 HTML Server Controls 38
3.2.1 Übersicht der HTML Server Controls 40
3.2.2 Die Basisklasse HtmlControl 42
3.2.3 Das allgemeine HTML Server Control 43
3.2.4 Container-Controls 43
3.2.5 LiteralControl 48
3.2.6 Eingabeelemente 49
3.3 Web Controls 57
3.3.1 Übersicht der Web Controls 58
3.3.2 Die Basisklasse WebControl 58
3.3.3 Standard Web Controls 60
3.3.4 Reiche Web Controls 65
3.4 Smart Navigation 66
3.5 Den ViewState für eigene Daten nutzen 69
3.6 Controls dynamisch hinzufügen 71
3.7 Datenaustausch zwischen Web-Formularen 73
3.7.1 Die Eigenschaft HttpContext.Handler 73
4 Eingabevalidierung 78
4 Eingabevalidierung 80
4.1 Die Basisklasse BaseValidator 81
4.2 Verfügbare Validation Controls 82
4.2.1 RequiredFieldValidator 82
4.2.2 CompareValidator 83
4.2.3 RangeValidator 84
4.2.4 RegularExpressionValidator 84
4.2.5 CustomValidator 85
4.3 Fehlerübersicht mit dem ValidationSummary 87
5 Datenbindung 90
5 Datenbindung 92
5.1 Einfache Datenbindung 92
5.2 Einführung in ADO.NET 94
5.2.1 Verbindungsloser Zugriff 94
5.2.2 Das DataSet-Objekt 95
5.2.3 XML als zentrales Element 95
5.2.4 Einbindung in ASP.NET 95
5.2.5 Einfacher Lesezugriff 97
5.2.6 Stichwort SQL-Injection 98
5.2.7 Arbeiten mit dem DataSet 99
5.2.8 Daten ändern und neu anlegen 101
5.3 List Controls 102
5.3.1 Die Basisklasse ListControl 102
5.3.2 ListBox 103
5.3.3 RadioButtonList 105
5.4 Data Controls 107
5.4.1 Repeater 108
5.4.2 Die Basisklasse BaseDataList 110
5.4.3 DataList 111
5.4.4 DataGrid 113
6 Code Behind 122
6 Code Behind 124
6.2 Server Controls und Code Behind 127
6.3 Code Behind-Klassen kompilieren 127
6.4 Visual Studio.NET und Code Behind 128
6.5 Seitenvorlagen mit Code Behind 128
7 State-Management 134
7 State-Management 136
7.1 Session State 136
7.1.1 Wie das Session-Management funktioniert 136
7.1.2 Zugriff auf Session-Variablen 137
7.1.3 Ablage der Session-Daten 139
7.1.4 Ablage von komplexen Daten 139
7.1.5 Konfiguration 141
7.1.6 Session-Ereignisse nutzen 143
7.2 Application State 143
7.2.1 Zugriff auf applikationsweite Variablen 144
7.2.2 Application-Ereignisse nutzen 145
8 Wichtige .NET-Klassen 148
8 Wichtige .NET-Klassen 150
8.1 Emails versenden 150
8.1.1 Eine Mail mit nur einer Zeile Code 150
8.1.2 Die Klasse MailMessage 151
8.1.3 Wer verschickt die Mail eigentlich? 152
8.1.4 Mehrere Empfänger adressieren 153
8.1.5 Dateien anhängen 153
8.2 Zugriff auf das Dateisystem 154
8.2.1 Zugriff auf Laufwerke und Verzeichnisse 155
8.2.2 Zugriff auf Dateien 158
8.2.3 Dateien lesen und schreiben 158
8.3 Grafiken on the fly generieren 160
8.3.1 Zeichnen mit der Klasse Graphics 161
9 Sicherheit 164
9 Sicherheit 166
9.1 Basics 166
9.1.1 Authentication 166
9.1.2 Authorization 168
9.1.3 Impersonation 168
9.2 Windows Authentication 168
9.2.1 Konfiguration 169
9.2.2 Windows Authentication im Einsatz 169
9.2.3 Gruppenmitgliedschaft überprüfen 172
9.2.4 Impersonation 172
9.3 Forms Authentication 175
9.3.1 Konfiguration 176
9.3.2 Forms Authentication im Einsatz 176
9.3.3 Individuelle Überprüfung der Benutzerdaten 178
9.4 Passport Authentication 178
9.5 Authorization 179
9.5.1 File Authorization 179
10 Eigene Controls 182
10 Eigene Controls 184
10.1 User Controls 184
10.1.1 Eigenschaften implementieren 185
10.1.2 Web Controls in User Control verwenden 186
10.1.3 Ereignisse implementieren 187
10.1.4 User Controls dynamisch laden 191
10.2 Custom Controls 192
10.2.1 Ein einfaches Beispiel 192
10.2.2 Bestehende Controls erweitern 194
11 Caching und Optimierung 200
11 Caching und Optimierung 202
11.1 Cachen von ganzen Seiten 202
11.1.1 Ein einfaches Beispiel 203
11.1.2 Die @OutputCache-Direktive 204
11.2 Cachen von Seitenbereichen 204
11.2.1 Ein einfaches Beispiel 205
11.3 Cachen von Objekten 206
11.3.1 Zugriff auf die Cache-Collection 206
11.3.2 Ein einfaches Beispiel 207
11.3.3 Abhängigkeiten festlegen 208
11.4 Weitere Optimierungsmöglichkeiten 210
11.4.1 Arbeiten mit Sessions 210
11.4.2 Arbeiten mit Server Controls 211
11.4.3 Arbeiten mit dem ViewState 212
11.4.4 Round Trips zum Server 213
11.4.5 Programmseitige Textausgaben 216
11.4.6 Arbeiten mit Ausnahmen 216
11.4.7 Arbeiten mit COM-Komponenten 218
11.4.8 Arbeiten mit Datenbanken 218
11.4.9 Debugging 219
Index 222

2 Basics (S. 21-22)

2.1 Was ist ASP.NET?

ASP.NET ist eine Erweiterung der Internet Information Services (IIS) in Form einer ISAPI Extension. An den Server gerichtete Client-Anfragen mit einer bestimmten Dateiendung werden an die ASP.NET-Engine weitergereicht. Diese verarbeitet die Anfrage und sendet das Ergebnis über die IIS zurück an den Client. Die Verbindung basiert auf dem Protokoll HTTP. Das Ergebnis besteht typischerweise aus einem HTML-Stream, der im Browser des Clients interpretiert wird.

ASP.NET findet folgerichtig auf dem Server statt. Hier kann das an den Client zurückgesendete Ergebnis programmiert werden. Es steht hierzu innerhalb des .NET Frameworks eine umfangreiche und spezialisierte Klassenbibliothek zur Verfügung. Diese kann mit jeder NET-Sprache eingesetzt werden. Wie auch in der Desktop-Entwicklung sind zwei heiße Anwärter auf die Position der Sprache der ersten Wahl C# und Visual Basic.NET.

2.2 Struktur einer Web-Applikation

Vergleichbar mit den bekannten Desktop-Applikationen wird bei ASP.NET eine komplexe, zusammenhängende Anwendungslösung Web-Applikation genannt. Konkret würde diese Bezeichnung beispielsweise eine Unternehmenspräsentation im Internet oder ein Web-Shop verdienen.

Eine Web-Applikation wird durch ein physikalisches Verzeichnis auf dem Server repräsentiert. Alle zugehörigen Informationen und Daten sind unterhalb dieses Verzeichnisses abgelegt.

Innerhalb einer Web-Applikation werden einzelne Bereiche und Funktionalitäten in ASP.NET-Seiten gegliedert. Jede dieser Einheiten entspricht einer im ClientBrowser angezeigten Internet-Seite. Unterschiedliche Aufrufe dieser Seite können programmatisch in unterschiedlichen, dynamischen Ausgaben resultieren. Die Seiten sind somit nicht statisch, wie Sie es von Dateien mit der Endung kennen. Dieses Grundprinzip von ASP.NET ist vergleichbar mit den Fenstern einer Desk top-Applikation. Jede Seite wird durch eine Text-Datei mit der Endung im Verzeichnis der Web-Applikation oder eines darunter liegenden Ordners abgebildet.

Neben einer quasi beliebigen Anzahl von Seiten besteht eine Web-Applikation aus der individuellen Konfiguration. Diese wird - wie bei NET üblich - in einer XMLDatei abgelegt. Es handelt sich um die Datei im Hauptverzeichnis der Web-Applikation.

Klassenbibliotheken mit zusätzlichen Funktionalitäten aus dem eigenen Haus oder von Drittherstellern werden als DLL im Unterverzeichnis der Web-Applikation abgelegt.

2.2.1 Anlage einer neuen Web-Applikation

Web-Applikationen werden zumeist unterhalb von angelegt. Dieses Verzeichnis wird von den Internet Information Services genutzt.

Nachdem Sie ein neues Verzeichnis erstellt haben, müssen Sie dieses den IIS bekannt machen. Öffnen Sie hierzu die entsprechende Management-Konsole „Internet-Informationsdienste" im Verwaltungsbereich der Systemsteuerung. Klicken Sie hier rechts auf die „Standardwebsite", und wählen Sie den Menüpunkt „Neu > Virtuelles Verzeichnis".

Im Assistenten können Sie dem oben angelegten Verzeichnis Ihrer WebApplikation einen individuellen Alias zuweisen. Anschließend steht das Verzeichnis unter diesem Namen dem öffentlichen Zugriff von außen zur Verfügung. Rufen Sie zum Test folgende Adresse im Browser auf http://localhost//.

2.3 Aufbau einer ASP.NET-Seite

Bei einer ASP.NET-Seite handelt es sich um eine Text-Datei im physikalischen Verzeichnis der Web-Applikation. Die Datei trägt die Endung und kann unter ihrem Namen direkt im Client-Browser angesprochen werden: Beim ersten Aufruf der Seite wird sie kompiliert und in Form einer Klassenbibliothek als DLL im temporären ASP.NET-Verzeichnis abgelegt: Fortan werden alle Anfragen auf die Datei mittels Ausführung der DLL bedient. Erst bei einer Änderung der Text-Datei oder der Konfiguration der WebApplikation wird die Seite neu kompiliert.

Eine Seite besteht typischerweise aus drei großen Teilen. Im deklarativen Bereich werden seitenspezifische Einstellungen vorgenommen. Hierzu werden in einer festgelegten Syntax so genannte Direktiven notiert. Es folgt der Script-Block, in dem Programmanweisungen und somit das dynamische Innenleben der Seite angegeben werden. Der dritte und letzte Teil umfasst die Darstellung der Seite. Hier werden wie bei regulären statischen Internet-Seiten HTML-Elemente notiert.

Erscheint lt. Verlag 1.1.2002
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Web / Internet
ISBN-10 3-446-22397-5 / 3446223975
ISBN-13 978-3-446-22397-4 / 9783446223974
Haben Sie eine Frage zum Produkt?
PDFPDF (Wasserzeichen)
Größe: 1,9 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
CHF 48,75
Das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

eBook Download (2023)
Rheinwerk Computing (Verlag)
CHF 43,85