SessionStateStoreProviderBase.CreateUninitializedItem Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge un nuovo elemento di stato sessione all'archivio dati.
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)
Parametri
- context
- HttpContext
Oggetto HttpContext per la richiesta corrente.
Esempio
Per un esempio di implementazione del provider di archiviazione con stato sessione, vedere Implementazione di un provider di archiviazione Session-State.
Commenti
Il CreateUninitializedItem metodo viene usato con sessioni quando gli cookieless
attributi e regenerateExpiredSessionId
sono entrambi true
. Se l'oggetto regenerateExpiredSessionId attribute
SessionStateModule è impostato per true
generare un nuovo SessionID valore quando viene rilevato un valore scadutoSessionID.
Il processo di generazione di un nuovo SessionID valore richiede il reindirizzamento SessionID del browser a un URL contenente il valore appena generato. Il CreateUninitializedItem metodo viene chiamato durante la richiesta iniziale contenente un valore scaduto SessionID . Dopo che l'oggetto SessionStateModule acquisisce un nuovo SessionID valore per sostituire il valore scaduto, chiama il CreateUninitializedItem metodo per aggiungere una voce non inizializzata all'archivio dati dello stato sessione. Il browser viene quindi reindirizzato all'URL contenente il valore appena generato SessionID . L'esistenza della voce non inizializzata nell'archivio dati sessione garantisce che la richiesta reindirizzata che include il valore appena generato SessionID non sia errata per una richiesta per una sessione scaduta ed è invece considerata come una nuova sessione.
La voce non inizializzata nell'archivio dati sessione è associata al valore appena generato SessionID e contiene solo valori predefiniti, tra cui una data e un'ora di scadenza e un valore che corrisponde al actionFlags
parametro dei GetItem metodi e GetItemExclusive . La voce non inizializzata nell'archivio stato sessione deve includere un actionFlags
valore uguale al valore di InitializeItem enumerazione. Questo valore viene passato all'oggetto dai GetItem metodi e GetItemExclusive e informa l'oggetto SessionStateModuleSessionStateModule che la sessione corrente è una nuova sessione non inizializzata. L'oggetto SessionStateModule inizializzerà quindi la nuova sessione e genererà l'evento Session_OnStart
.
Per altre informazioni sulle sessioni senza cookie, vedere la IsCookieless proprietà .