(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

SessionStateStoreProviderBase.GetItemExclusive-Methode

Gibt schreibgeschützte Sitzungszustandsdaten vom Sitzungsdatenspeicher zurück.

Namespace:  System.Web.SessionState
Assembly:  System.Web (in System.Web.dll)

public abstract SessionStateStoreData GetItemExclusive(
	HttpContext context,
	string id,
	out bool locked,
	out TimeSpan lockAge,
	out Object lockId,
	out SessionStateActions actions
)

Parameter

context
Typ: System.Web.HttpContext
Der HttpContext für die aktuelle Anforderung.
id
Typ: System.String
Der SessionID für die aktuelle Anforderung.
locked
Typ: System.Boolean
Diese Methode enthält bei der Rückgabe einen booleschen Wert, der auf true festgelegt ist, wenn eine Sperrung erfolgte, andernfalls auf false.
lockAge
Typ: System.TimeSpan
Diese Methode enthält bei der Rückgabe ein TimeSpan-Objekt, das auf die Zeitdauer festgelegt ist, für das ein Element im Sitzungsdatenspeicher bereits gesperrt ist.
lockId
Typ: System.Object
Diese Methode enthält bei der Rückgabe ein Objekt, das auf den Sperrbezeichner für die aktuelle Anforderung festgelegt ist. Weitere Informationen über Sperrbezeichner finden Sie unter "Sperren von Daten im Sitzungsspeicher" in der Zusammenfassung der SessionStateStoreProviderBase-Klasse.
actions
Typ: System.Web.SessionState.SessionStateActions
Diese Methode enthält bei der Rückgabe einen der SessionStateActions-Werte, der angibt, ob es sich bei der aktuellen Sitzung um eine nicht initialisierte Sitzung ohne Cookies handelt.

Rückgabewert

Typ: System.Web.SessionState.SessionStateStoreData
Ein mit Sitzungswerten und Informationen aus dem Sitzungsdatenspeicher gefülltes SessionStateStoreData.

Das SessionStateModule-Objekt ruft die GetItemExclusive-Methode am Anfang einer Anforderung im AcquireRequestState-Ereignis auf, wenn das EnableSessionState-Attribut auf den Standardwert true festgelegt ist. Wenn das EnableSessionState-Attribut auf ReadOnly festgelegt ist, ruft das SessionStateModule-Objekt stattdessen die GetItem-Methode auf.

Die GetItemExclusive-Methode gibt ein mit Sitzungsinformationen aus dem Datenspeicher gefülltes SessionStateStoreData-Objekt zurück, aktualisiert das Ablaufdatum der gespeicherten Daten und sperrt die Sitzungselementdaten im Datenspeicher für die Dauer der Anforderung. Wenn im Datenspeicher keine Sitzungselementdaten gefunden werden, legt die GetItemExclusive-Methode den locked out-Parameter auf false fest und gibt null zurück. Dadurch ruft das SessionStateModule-Objekt die CreateNewStoreData-Methode auf, um ein neues Sitzungselement im Datenspeicher zu erstellen. Wenn im Datenspeicher Sitzungselementdaten gefunden werden, die Daten jedoch gesperrt sind, legt die GetItemExclusive-Methode den locked out-Parameter auf true fest, legt den lockAge out-Parameter auf das aktuelle Datum und die aktuelle Uhrzeit minus dem Datum und der Uhrzeit fest, zu dem das Element gesperrt wurde (diese Angaben werden aus dem Datenspeicher abgerufen), legt den lockId out-Parameter auf den vom Datenspeicher abgerufenen Sperrbezeichner fest und gibt null zurück. Dadurch ruft das SessionStateModule-Objekt die GetItemExclusive-Methode nach einem halbsekündlichen Intervall erneut auf, um zu versuchen, die Sitzungselementinformationen abzurufen und die Daten zu sperren. Wenn der Wert, auf den der lockAge out-Parameter festgelegt ist, den ExecutionTimeout-Wert überschreitet, ruft SessionStateModule zunächst die ReleaseItemExclusive-Methode auf, um die Sperre auf den Sitzungselementdaten zu löschen, und ruft dann erneut die GetItemExclusive-Methode auf.

Der actionFlags-Parameter wird verwendet, wenn sowohl das cookieless-Attribut als auch das regenerateExpiredSessionId-Attribut auf true festgelegt ist. Wenn der actionFlags-Wert auf InitializeItem festgelegt ist, handelt es sich bei dem Eintrag im Sitzungsdatenspeicher um eine neue Sitzung, die initialisiert werden muss. Noch nicht initialisierte Sitzungsdatenspeicher werden durch Aufrufen der CreateUninitializedItem-Methode erstellt. Wenn es sich bei dem Element in den Sitzungsdaten um ein initialisiertes Element handelt, ist der actionFlags-Parameter auf 0 (null) festgelegt.

Bei der Implementierung eines benutzerdefinierten Sitzungszustandsspeichers mit Unterstützung von Sitzungen ohne Cookies muss der actionFlags out-Parameter auf den Wert festgelegt werden, der vom Sitzungsdatenspeicher für das aktuelle Element zurückgegeben wird. Wenn der actionFlags-Parameterwert für das angeforderte Element im Sitzungsspeicher dem InitializeItem-Enumerationswert entspricht, muss die GetItemExclusive-Methode nach dem Festlegen des actionFlags out-Parameters den Wert im Datenspeicher auf 0 (null) festlegen.

Ein Beispiel für die Implementierung eines Anbieters für den Sitzungszustandsspeicher finden Sie unter Implementing a Session-State Store Provider.

.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft