SessionStateStoreProviderBase.CreateUninitializedItem Methode

Definition

Fügt dem Datenspeicher ein neues Sitzungszustandselement hinzu.

public:
 abstract void CreateUninitializedItem(System::Web::HttpContext ^ context, System::String ^ id, int timeout);
public abstract void CreateUninitializedItem (System.Web.HttpContext context, string id, int timeout);
abstract member CreateUninitializedItem : System.Web.HttpContext * string * int -> unit
Public MustOverride Sub CreateUninitializedItem (context As HttpContext, id As String, timeout As Integer)

Parameter

context
HttpContext

Das HttpContext für die aktuelle Anforderung.

id
String

Das SessionID für die aktuelle Anforderung.

timeout
Int32

Der Timeout der Sitzung für die aktuelle Anforderung.

Beispiele

Ein Beispiel für eine Implementierung eines Sitzungs Zustands Speicher Anbieters finden Sie unter Implementieren eines Session-State-Speicher Anbieters.

Hinweise

Die CreateUninitializedItem -Methode wird mit Sitzungen verwendet, wenn das cookieless -Attribut und das- regenerateExpiredSessionId Attribut beide sind true . Wenn das- regenerateExpiredSessionId attribute Objekt auf festgelegt true ist, generiert das- SessionStateModule Objekt einen neuen SessionID Wert, wenn ein abgelaufener SessionID Wert erreicht wird.

Beim Generieren eines neuen SessionID Werts muss der Browser an eine URL umgeleitet werden, die den neu generierten Wert enthält SessionID . Die- CreateUninitializedItem Methode wird während der ursprünglichen Anforderung aufgerufen, die einen abgelaufenen SessionID Wert enthält. Nachdem das- SessionStateModule Objekt einen neuen SessionID Wert zum Ersetzen des abgelaufenen Werts erhalten hat, ruft es die- CreateUninitializedItem Methode auf, um einen nicht initialisierten Eintrag zum Sitzungszustandsdaten Speicher hinzuzufügen. Der Browser wird dann an die URL umgeleitet, die den neu generierten SessionID Wert enthält. Wenn der nicht initialisierte Eintrag im Sitzungsdaten Speicher vorhanden ist, wird sichergestellt, dass die umgeleitete Anforderung, die den neu generierten Wert enthält, SessionID nicht für eine Anforderung für eine abgelaufene Sitzung falsch ist. Sie wird stattdessen als neue Sitzung behandelt.

Der nicht initialisierte Eintrag im Sitzungsdaten Speicher ist mit dem neu generierten Wert verknüpft SessionID und enthält nur Standardwerte, einschließlich eines Ablaufdatums und einer Uhrzeit sowie eines Werts, der dem actionFlags -Parameter der GetItem -Methode und der- GetItemExclusive Methode entspricht. Der nicht initialisierte Eintrag im Sitzungs Zustands Speicher sollte einen actionFlags Wert enthalten, der gleich dem- InitializeItem Enumerationswert ist. Dieser Wert wird SessionStateModule von der GetItem -Methode und der-Methode an das-Objekt übermittelt GetItemExclusive und informiert das- SessionStateModule Objekt darüber, dass die aktuelle Sitzung eine neue, aber nicht initialisierte Sitzung ist. Das SessionStateModule -Objekt initialisiert dann die neue Sitzung und hebt das- Session_OnStart Ereignis auf.

Weitere Informationen zu cookielosen Sitzungen finden Sie unter der- IsCookieless Eigenschaft.

Gilt für

Siehe auch