Aracılığıyla paylaş


SessionStateStoreProviderBase.CreateUninitializedItem Yöntem

Tanım

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

HttpContext Geçerli istek için.

id
String

SessionID Geçerli istek için.

timeout
Int32

Geçerli isteğin oturumu Timeout .

Örnekler

Oturum durumu deposu sağlayıcısı uygulaması örneği için bkz. Session-State Deposu Sağlayıcısı Uygulama.

Açıklamalar

CreateUninitializedItem yöntemi, ve regenerateExpiredSessionId öznitelikleri her ikisi de trueolduğunda cookieless oturumlarla birlikte kullanılır. regenerateExpiredSessionId attribute için ayarlanmış true olması, süresi dolan SessionID bir değerle karşılaşıldığında nesnenin SessionStateModule yeni SessionID bir değer oluşturmasına neden olur.

Yeni SessionID değer oluşturma işlemi, tarayıcıyı yeni oluşturulan SessionID değeri içeren bir URL'ye yeniden yönlendirmeyi gerektirir. yöntemi CreateUninitializedItem , süresi dolmuş bir değer içeren ilk istek sırasında çağrılır SessionID . SessionStateModule Nesnesi süresi dolan değeri değiştirmek için yeni SessionID bir değer aldıktan sonra, oturum durumu veri deposuna başlatılmamış bir giriş eklemek için yöntemini çağırırCreateUninitializedItem. Ardından tarayıcı, yeni oluşturulan SessionID değeri içeren URL'ye yönlendirilir. Oturum veri deposunda başlatılmamış girişin varlığı, yeni oluşturulan SessionID değeri içeren yeniden yönlendirilen isteğin süresi dolan bir oturum için bir istekle karıştırılmamasını ve bunun yerine yeni oturum olarak kabul edilmesini sağlar.

Oturum veri deposundaki başlatılmamış giriş, yeni oluşturulan SessionID değerle ilişkilendirilir ve son kullanma tarihi ve saati ile ve GetItemExclusive yöntemlerinin GetItem parametresine actionFlags karşılık gelen bir değer de dahil olmak üzere yalnızca varsayılan değerleri içerir. Oturum durumu deposundaki başlatılmamış girdi, numaralandırma değerine eşit InitializeItem bir actionFlags değer içermelidir. Bu değer ve GetItemExclusive yöntemleri tarafından GetItem nesnesine SessionStateModule geçirilir ve nesneye SessionStateModule geçerli oturumun yeni ama başlatılmamış bir oturum olduğunu bildirir. Nesne SessionStateModule daha sonra yeni oturumu başlatır ve olayı tetikler Session_OnStart .

Tanımlama bilgisi olmayan oturumlar hakkında daha fazla bilgi için özelliğine IsCookieless bakın.

Şunlara uygulanır

Ayrıca bkz.