Inhalt
Vorwort
1 Wie .NET und ASP.NET funktionieren
2 Installation
3 Hinweise zu VB.NET
4 »Hallo, Welt!« – Ein ASP.NET-Crashkurs
5 Die Page-Klasse
6 HTML-Serversteuerelemente
7 Validierung von Anwendereingaben
8 Webserversteuerelemente
9 Webserversteuerelemente für die Darstellung von Listen
10 Webserversteuerelemente selbst erstellen
11 Der Status von Seiten, Sitzungen und Applikationen
12 ASP.NET und Datenbanken
13 »Wer darf was?« ASP.NET und Sicherheit
14 Webanwendungen erstellen und konfigurieren
15 Leistungssteigerung durch Caching
16 Web Services
A Anhang
Index
Download (ca 14,3 MB)
Buch bestellen (29,90 EUR)
Ihre Meinung?@
<< zurück | Galileo Computing / <openbook> / Einstieg in ASP.NET | vor >>
Einstieg in ASP.NET von Matthias Lohrer
| Kapitel 11 Der Status von Seiten, Sitzungen und Applikationen
|  | 11.1 Versteckte Felder in Formularen nutzen
|  | 11.2 Der Status einer Seite: Viewstate
|  |  | 11.2.1 Eigene Daten im Viewstate speichern
|  |  | 11.2.2 Den Anzeigestatus ein- und ausschalten
|  | 11.3 Der Status einer Sitzung: Session
|  |  | 11.3.1 Die Klasse HttpSessionState
|  |  | 11.3.2 Wie ASP.NET die Probleme des klassischen ASP löst
|  |  | 11.3.3 Übertragung der Session-ID: Cookie oder URL
|  |  | 11.3.4 Den Sitzungsstatus ein- und ausschalten
|  |  | 11.3.5 Den Sitzungsstatus konfigurieren
|  |  | 11.3.6 Session-Ereignisse verwenden
|  |  | 11.3.7 Objekte mit Session-Scope einbinden
|  |  | 11.3.8 Instanzen eigener Klassen in den Sitzungsdaten speichern
|  | 11.4 Cookies verwenden
|  | 11.5 Der Status einer Anwendung: Application
|  |  | 11.5.1 Den Zugriff auf anwendungsweite Daten synchronisieren
|  |  | 11.5.2 Beschränkungen von Application-Variablen
## 11.4 Cookies verwenden ASP.NET verwaltet Cookies in Objekten vom Typ HttpCookieCollection. Request.Cookies liefert ein solches Objekt für diejenigen Cookies, die der Server vom Browser empfangen hat. Response.Cookies enthält diejenigen Cookies, die der Server zum Browser schicken wird. Für das einzelne Cookie steht die Klasse HttpCookie zur Verfügung. Hier wieder eine kleine Demonstration. cookie01.aspx setzt zwei Cookies.
    <!-- cookie01.aspx -->
    <%@ Page Language="VB" Debug="True" Strict="True"  %>
    <script runat="server">
    Sub Page_Load (ByVal Sender As Object, _
                   ByVal E As EventArgs)
       ' Erstes Cookie
       Dim keks1 As New HttpCookie ("Krümel 1", "abcdefg")
       Response.Cookies.Add (keks1)

       ' Cookie persistent speichern
       Dim keks As HttpCookie = new HttpCookie _
                                    ("Zuletzt besucht am")
       keks.Value = CStr(DateTime.Now())
       Dim dt As DateTime = DateTime.Now()
       ' 24 Stunden lang bleibt das Cookie gespeichert
       Dim ts As New TimeSpan(24,0,0)
       keks.Expires = dt.Add(ts)
       Response.Cookies.Add(keks)
    End Sub
    </script>
    <html><head>
    <title>Cookie-Demo, Cookies setzen</title></head>
    <body><h3>Cookie-Demo, Cookies setzen</h3>
    <p>Diese Seite setzt zwei Cookies</p>
    <a href="cookie02.aspx">Zur Seite, die die
    Cookies wieder ausliest.</a>
    </body></html>
Wenn Sie für die Eigenschaft Expires keinen Wert angeben, wird das Cookie gelöscht, sobald der Browser geschlossen wird. Wenn Sie eine Zeit in der Zukunft angeben, bleibt das Cookie persistent gespeichert, bis sein Verfallsdatum erreicht ist. cookie02.aspx liest die vorhandenen Cookies wieder aus (siehe Abbildung 11.16).
    <!-- cookie02.aspx -->
    <%@ Page Language="VB" Debug="True" Strict="True"  %>
    <script runat="server">
    Sub Page_Load (ByVal Sender As Object, _
                   ByVal E As EventArgs)
    Dim keksColl As HttpCookieCollection
    Dim i As Integer
    Dim sb As New StringBuilder()

    keksColl = Request.Cookies

    sb.Append _
    ("<b>Cookie-Name = Cookie-Wert, Verfallsdatum</b><br>")
    For i = 0 To keksColl.Count – 1
       sb.Append (keksColl(i).Name)
       sb.Append (" = ")
       sb.Append (keksColl(i).Value)
       sb.Append (", ")
       sb.Append (keksColl(i).Expires.toString())
       sb.Append ("<br>")
    Next
    ausgabe.innerHTML = sb.toString()
    End Sub
    </script>
    <html><head><title>Cookie-Demo, Lesen</title></head>
    <body><h3>Cookie-Demo, Lesen</h3>
    <p>Diese Seite liest die vorhandenen Cookies.</p>
    <p runat="server" id="ausgabe" />
    </body></html>
Wenn Sie den Browser schließen, wieder öffnen und erneut cookie02.aspx aufrufen, wird nur noch das persistent gespeicherte Zuletzt besucht am-Cookie angezeigt. Das Verfallsdatum zeigt auch bei dem persistent gespeicherten Zuletzt besucht am-Cookie das Datum 01.01.0001 00:00:00 und nicht das korrekte Verfallsdatum an. Ich weiß nicht, warum hier nicht das korrekte Verfallsdatum angezeigt wird. Hier klicken, um das Bild zu Vergrößern Abbildung 11.16 Cookies werden in einer HttpCookieCollection gespeichert Sie können einem Cookie auch mehrere Schlüssel-Wert-Paare zuweisen. Dafür verwenden Sie die Eigenschaft Values im Gegensatz zum einzelnen Wert von Value. Wenn ein Cookie diese Art der Datenspeicherung nutzt, liefert die Eigenschaft HasKeys True zurück.
Name | Typ | Beschreibung
--- | --- | ---
Domain | String | Name der Domäne, der das Cookie zugeordnet ist. Standardwert ist die aktuelle Domäne.
Expires | DateTime | Verfallsdatum, bis zu dem das Cookie gültig ist
HasKeys | Boolean | True, wenn das Cookie über Unterschlüssel verfügt. Siehe auch Values.
Item(String) | String | Wert desjenigen Cookies, dessen Schlüssel im String übergeben wird. Default-Eigenschaft
Name | String | Name des Cookies
Path | String | Der virtuelle Pfad, der die Domain ergänzt
Secure | Boolean | Legt fest, ob ein Cookie ausschließlich über HTTPS übertragen werden soll
Value | String | Wert des Cookies
Values | NameValueCollection | Auflistung von Schlüssel-Wert-Paaren. HasKeys ist True, wenn hier Werte gespeichert sind.
Tabelle 11.3 Eigenschaften der Klasse HttpCookie
Eigenschaften
AllKeys | String() | Ein Array mit allen Cookienamen
Count | Integer | Anzahl enthaltener Cookies
Item(Integer) oder Item(String) | HttpCookie | Das einzelne Cookie über den numerischen Index oder über den Namen aufrufen
Keys | NameObjectCollectionBase.KeysCollection | Eine Collection mit allen Cookie-Schlüsseln
Methoden
Add(HttpCookie) | Fügt ein Cookie hinzu
Clear() | Entfernt alle Cookies aus der Auflistung
CopyTo(Array, Integer) | Kopiert die Cookies in das Array ab der Integer-Position
GetKey(Integer) | Liefert den Schlüssel des Cookies, dessen Indexposition genannt wird
Remove(String) | Entfernt das Cookie, dessen Name genannt wird
Set (HttpCookie) | Aktualisiert ein Cookie in der Auflistung
Tabelle 11.4 Mitglieder der Klasse HttpCookieCollection
<< zurück | <top> | vor >>
Zum Katalog
Einstieg in ASP.NET bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung

.NET-Bibliothek
| Einstieg in VB.NET
| VB.NET
| Einstieg in C#
| Visual C#
| VB.NET und Datenbanken

Empfehlung
| Einstieg in XML

Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

MyGalileo
Der Service für registrierte Leser: Info

Copyright © Galileo Press GmbH 2003
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de