DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 175167 - Geändert am: Freitag, 9. März 2007 - Version: 3.1

 

Auf dieser Seite

Zusammenfassung

Bei der Entwicklung eines Active Server Pages (ASP)-Anwendung, eine allgemeine Methode zum Anpassen des Inhalts speichern Informationen über den Benutzer besteht. Es gibt mehrere Möglichkeiten, Informationen in einer ASP speichern Umgebung. In diesem Artikel werden die häufigsten Möglichkeiten zum Speichern Zustand, einschließlich Beispielcode und die vor- und Nachteile jeder Option.

Weitere Informationen

Sitzungs- und Anwendungsvariablen

Wie funktionieren Sie?

Die Sitzungs- und Variablen werden auf dem Server gespeichert. Eine Sitzungskennung, die am Anfang einer ASP-Sitzung generiert ist ein Arbeitsspeicher-Cookie, der auf dem Client die Sitzungsvariablen identifizieren gespeichert ist. Folglich muss der Client Cookies im Browser für Sitzungs- und Variablen arbeiten aktiviert haben.

-Experten

  • Diese Methode ist einfach zu implementieren.
  • Sie können einfache Variablen Typen und Objekte; (Speichern von Objekten wird jedoch nicht empfohlen) speichern.
  • Die in Sitzungs- und Variablen gespeicherten Werte werden vom Benutzer ausgeblendet.

Nachteile

  • Diese Methode muss die Clients Cookies im Webbrowser aktiviert haben.
  • Diese Methode kann nicht zuverlässig zwischen Frames in einem Frameset oder über mehrere Browser Instanzen freigegeben werden.
  • Diese Methode speichert Informationen auf dem Webserver. Dies verringert die Skalierbarkeit gibt es zwei Möglichkeiten: Variablen Sitzungen und Anwendungen verwenden Ressourcen auf dem Server und kann nicht auf vollständig Lastenausgleich Webfarmen verwendet werden.

Beispiel

Den Wert einer Sitzungsvariablen festlegen:
<%
   'Store information in a session variable.
   Session("myInformation") = "somevalue"
%>
				
den Wert abrufen, aus der Sitzungsvariablen:
<%
    'Retrieve the information stored in the session variable.
    myValue = Session("myInformation")
%>
				

Cookies

Wie funktionieren Sie?

Es gibt zwei Arten von Cookies: im Arbeitsspeicher-Cookies und Cookies, die auf der Clientfestplatte gespeichert sind. Arbeitsspeicher-Cookie ist ein oder mehrere Name / Wert-Paare, die in den Browser-Speicher gespeichert sind, bis der Browser geschlossen wird. Ein Cookie, das zum gespeichert ist Datenträger ist eine Datei auf dem Clientcomputer, der Name-Wert-Paare enthält.

Cookies können festgelegt und von clientseitigen und serverseitigen Code abgerufen.

-Experten

  • Diese Methode ist einfach zu implementieren.
  • Diese Methode kann gespeichert werden auf dem Datenträger für zukünftige Verwendung (datenträgerbasierte Cookie), indem einfach auf das Cookie ein Ablaufdatum festlegen. Dadurch wird Speicherplatz zwischen Browsersitzungen.

Nachteile

  • Der Client kann manuell ändern, Cookies, die gespeichert sind auf der Festplatte.
  • Diese Methode muss die Clients Cookies im Webbrowser aktiviert haben.
  • Cookies können keine Objekte speichern.

Beispiel

Speichern Sie Informationen in einem Cookie:
<%
   'Set a cookie value.
   Response.Cookies("myInformation") = "somevalue"
   'Expire the cookie to save it to disk. If this is omitted, the cookie
   'will be an in-memory cookie. In this case, the cookie is set to expire
   'in twenty days.
   Response.Cookies("myInformation").Expires = now() + 20
%>
				
den Wert aus einem Cookie abrufen:
<%
    'Retrieve the information that is stored.
    myValue = Request.Cookies("myInformation")
%>
				

Ausgeblendete Formularfelder

Wie funktionieren Sie?

Jede Seite benötigt ein Formular mit ausgeblendeter Formularfelder, die die Statusinformationen enthalten. Anstatt verknüpfen und Umleiten zu Seiten, wird das Formular gesendet, wenn ein Benutzer auf eine andere Seite aufruft.

-Experten

  • Diese Methode erfordert keine Cookies.

Nachteile

  • Es kann sein umleiten und Verknüpfen mit Seiten umständlich.
  • Diese Methode kann keine Objekte speichern.

Beispiel

Speichern Informationen in ausgeblendeten Feldern:
<HTML>
<HEAD>
<SCRIPT LANGUAGE=javascript>
  //Function that is used to submit the links:
  function browseToUrl(http://services.support.microsoft.com/url){
    form1.action=url;
    form1.submit();
  }
</SCRIPT>
</HEAD>
<BODY>

<%
  dim myInformation
  myInformation = "somevalue"  
%>

<!-- This stores the value that is set above in the hidden form field. -->
<FORM id="form1" name="form1" action="" method="post">
<INPUT type="hidden" id="myInformation" name="myInformation" value="<%= myInformation%>">  

<!-- Navigation sample that uses this technique. -->
<INPUT type="button" value="p3.asp" id=button1 name=button1 onclick='goToUrl("p3.asp");'>
</FORM>
</BODY>
</HTML>
				
den Wert aus dem ausgeblendete Formularfeld abrufen:
<%
    'Retrieving the information that is stored.
    myValue = Request.Form("myInformation")
%>
				

Abfragezeichenfolge

Wie funktioniert es?

Wenn Sie die QueryString -Auflistung verwenden, werden die Variablen in der URL als Name / Wert-Paar gespeichert. Zum Beispiel:
http://servername/page.asp?var1=value1&var2=value2&var3=value3
				
Hinweis : Name / Wert-Paare werden durch ein kaufmännisches und-Zeichen (&) getrennt.

-Experten

  • Wenn der Client die Seite Lesezeichen, werden der Zustand beibehalten.

Nachteile

  • Der vollständige URL kann nur 2083 Bytes sein.
  • Diese Methode kann keine Objekte speichern.
  • Der URL ist sehr lang und schwer zu lesen.

Beispiel

Speichern Informationen in die Abfragezeichenfolge:
<HTML>
<HEAD></HEAD>
<BODY>
<%
   'Function that assembles the QueryString:
   function AddToQueryString(qs, name, value)
     
     if qs="" then
       qs = name & "=" & value
     else
       qs = qs & "&" & name & "=" & value
     end if
     
     addToQueryString = qs
   end function

   dim querystring

   'Store the first value.
   querystring = AddToQueryString(querystring, "firstvar", "firstvalue")
   'Store the second value.
   querystring = AddToQueryString(querystring, "secondvar", "secondvalue")
%>

<a href="urlreceive.asp?<%=querystring%>">urlreceive.asp</a>
</BODY>
</HTML>
				
Abrufen der Werte aus der Abfragezeichenfolge:
<%
    'Retrieve the information stored.
    myFirstValue = Request.QueryString("firstvar")
    mySecondValue = Request.QueryString("secondvar")
%>
				

Datei und Datenbank

Wie funktionieren Sie?

Sie können dieses Verfahren auf unterschiedliche Weise implementieren. Die folgenden Schritte veranschaulichen eine Möglichkeit, die Datei und die Datenbank speichern des Zustands implementieren:
  1. Generieren einer ID beim ersten des Benutzers anmelden oder Browsevorgängen zu einer Seite innerhalb der Anwendung.
  2. Verwenden der Verfahren in diesem Artikel, um die ID speichern
  3. Verwenden Sie um die Werte in einer Datei zu speichern, die ID als Dateinamen ein. Verwenden Sie eine Kombination aus die ID und Name / Wert-Paar zur Identifikation des Datensatzes, um die Werte in einer Datenbank zu speichern.
  4. Speichern Sie optional einen Zeitstempel mit dem Name-Wert-Paar in der Datenbank. Für Dateien können Sie den Zeitstempel vom letzten Revision verwenden.
  5. Schreiben Sie einen Dienst für die Bereinigung (Löschen von Datensätzen und Dateien) in bestimmten Intervallen (z. B. 20 Minuten oder jede Nacht, basierend auf wie viele Benutzer die Site zuzugreifen). Der Dienst kann den Zeitstempel verwenden, um zu bestimmen, ob ein Datensatz abgelaufen ist.

-Experten

  • Die Werte werden vollständig vom Benutzer ausgeblendet.
  • Wenn Sie eine Dateifreigabe oder eine Datenbank verwenden, kann Hiermit Sitzungsvariablen auf einer Webfarm simuliert werden.
  • Es sind keine Cookies erforderlich.

Nachteile

  • Es speichert Daten auf der Serverseite.
  • Es kann umständlich, zu implementieren sein.
  • Diese Methode kann langsam sein, weil Datenbank- und Zugriff speichern und Abrufen der Werte erforderlich.

Informationsquellen

Weitere Informationen finden Sie in die folgenden Artikeln auf der Microsoft Developer Network (MSDN):
Sitzungsobjekt
http://msdn2.microsoft.com/en-us/library/aa371675.aspx (http://msdn2.microsoft.com/en-us/library/aa371675.aspx)

Application-Objekt
http://msdn2.microsoft.com/en-us/library/aa210897(office.11).aspx (http://msdn2.microsoft.com/en-us/library/aa210897(office.11).aspx)

Cookies
Response.Cookies Collection (http://msdn2.microsoft.com/en-us/library/ms524757.aspx)
Request.Cookies Collection (http://msdn2.microsoft.com/en-au/library/ms525394.aspx)

Abfragezeichenfolge
http://msdn2.microsoft.com/en-us/library/aa196462(office.11).aspx (http://msdn2.microsoft.com/en-us/library/aa196462(office.11).aspx)
Weitere Informationen finden Sie folgenden Artikel der Microsoft Knowledge Base:
244465  (http://support.microsoft.com/kb/244465/EN-US/ ) How To Disable ASP-Sitzungsstatus in ASP
178037  (http://support.microsoft.com/kb/178037/EN-US/ ) PRB: Session Variables Lost bei ASP wird in Frameset gefunden.
Aktuelle Artikel der Knowledge Base und weitere Supportinformationen zu Visual InterDev und Active Server Pages finden Sie auf der folgenden Seite der Microsoft Technical Support-Website:
http://support.microsoft.com/search/default.aspx?qu=vinterdev (http://support.microsoft.com/search/default.aspx?qu=vinterdev)

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Active Server Pages 4.0
Keywords: 
kbmt kbaspobj kbcodesnippet kbhowto kbscript KB175167 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 175167  (http://support.microsoft.com/kb/175167/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Zurückgezogener KB-ArtikelDisclaimer zu nicht mehr gepflegten KB-Inhalten
Dieser Artikel wurde für Produkte verfasst, für die Microsoft keinen Support mehr anbietet. Der Artikel wird deshalb in der vorliegenden Form bereitgestellt und nicht mehr weiter aktualisiert.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store