SessionStateStoreProviderBase.CreateUninitializedItem Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Veri deposuna yeni bir oturum durumu öğesi ekler.
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)
Parametreler
- context
- HttpContext
HttpContextGeçerli istek için.
Örnekler
Oturum durumu depo sağlayıcısı uygulamasının bir örneği için, bkz. Session-State deposu sağlayıcısı uygulama.
Açıklamalar
CreateUninitializedItemYöntemi, cookieless
ve regenerateExpiredSessionId
özniteliklerinin her ikisi de olduğunda oturumlarla kullanılır true
. Küme, regenerateExpiredSessionId attribute
true
SessionStateModule SessionID zaman aşımına uğradığı zaman bir değer ile karşılaşıldığında nesnenin yeni bir değer oluşturmasına neden olur SessionID .
Yeni bir değer oluşturma işlemi, SessionID tarayıcıyı yeni oluşturulan değeri içeren BIR URL 'ye yeniden yönlendirmelerini gerektirir SessionID . CreateUninitializedItemYöntemi, zaman aşımına uğradı bir değer içeren ilk istek sırasında çağrılır SessionID . Nesne, SessionStateModule SessionID zaman aşımı değerini değiştirmek için yeni bir değer aldıktan sonra, CreateUninitializedItem oturum durumu veri deposuna başlatılmamış bir giriş eklemek için yöntemini çağırır. Ardından tarayıcı, yeni oluşturulan değeri içeren URL 'ye yeniden yönlendirilir SessionID . Oturum veri deposundaki başlatılmamış girdinin varlığı, yeni oluşturulan değeri içeren yeniden yönlendirilen isteğin, SessionID zaman aşımına uğradı bir oturum için bir istek için hatalı şekilde karşılanmamasını ve bunun yerine yeni bir oturum kabul edilmesini sağlar.
Oturum veri deposundaki başlatılmamış giriş, yeni oluşturulan SessionID değerle ilişkilendirilir ve yalnızca bir süre sonu tarih ve saati ve actionFlags
ve yöntemlerinin parametresine karşılık gelen bir değer dahil olmak üzere yalnızca varsayılan değerleri içerir GetItem GetItemExclusive . Oturum durumu deposundaki başlatılmamış giriş, actionFlags
sabit listesi değerine eşit bir değer içermelidir InitializeItem . Bu değer, SessionStateModule ve yöntemleri tarafından nesnesine geçirilir GetItem GetItemExclusive ve SessionStateModule nesneyi geçerli oturumun yeni ancak başlatılmamış bir oturum olduğunu bildirir. SessionStateModuleDaha sonra nesne yeni oturumu başlatır ve Session_OnStart
olayı yükseltir.
Tanımlama bilgisi olmayan oturumlar hakkında daha fazla bilgi için bkz IsCookieless . özelliği.