SessionStateStoreProviderBase.CreateUninitializedItem Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá novou položku stavu relace do úložiště dat.
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)
Parametry
- context
- HttpContext
HttpContextPro aktuální požadavek.
Příklady
Příklad implementace zprostředkovatele úložiště stavu relace najdete v tématu implementace poskytovatele služby Session-State Store.
Poznámky
CreateUninitializedItemMetoda se používá s relacemi, pokud cookieless
regenerateExpiredSessionId
jsou atributy a true
. regenerateExpiredSessionId attribute
Nastavením na true
hodnotu způsobí, že SessionStateModule objekt vygeneruje novou SessionID hodnotu SessionID , když je zjištěna hodnota, jejíž platnost vypršela.
Proces generování nové SessionID hodnoty vyžaduje přesměrování prohlížeče na adresu URL, která obsahuje nově vygenerovanou SessionID hodnotu. CreateUninitializedItemMetoda je volána během počáteční žádosti, která obsahuje hodnotu, jejíž platnost vypršela SessionID . Poté, co SessionStateModule objekt získá novou SessionID hodnotu k nahrazení hodnoty, která vypršela, volá CreateUninitializedItem metodu pro přidání neinicializované položky do úložiště dat stavu relace. Prohlížeč se pak přesměruje na adresu URL obsahující nově vygenerovanou SessionID hodnotu. Existence neinicializované položky v úložišti dat relace zajišťuje, že přesměrovaná žádost, která obsahuje nově vygenerovanou hodnotu, SessionID nebude pro požadavek na relaci s vypršenou platností zapsána a místo toho je považována za novou relaci.
Neinicializovaná položka v úložišti dat relace je přidružena k nově vygenerované SessionID hodnotě a obsahuje pouze výchozí hodnoty, včetně data a času vypršení platnosti a hodnoty, která odpovídá actionFlags
parametru GetItem GetItemExclusive metod a. Neinicializovaná položka v úložišti stavu relace by měla obsahovat actionFlags
hodnotu rovnou InitializeItem hodnotě výčtu. Tato hodnota je předána SessionStateModule objektu metodou GetItem a GetItemExclusive a informuje SessionStateModule objekt o tom, že aktuální relace je nová, ale neinicializovaná relace. SessionStateModuleObjekt pak Inicializuje novou relaci a vyvolá Session_OnStart
událost.
Další informace o relacích bez souborů cookie najdete v části IsCookieless vlastnost.