Share via


SessionStateStoreProviderBase.CreateUninitializedItem Metode

Definisi

Menambahkan item keadaan sesi baru ke penyimpanan data.

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)

Parameter

context
HttpContext

HttpContext untuk permintaan saat ini.

id
String

SessionID untuk permintaan saat ini.

timeout
Int32

Sesi Timeout untuk permintaan saat ini.

Contoh

Untuk contoh implementasi penyedia penyimpanan status sesi, lihat Menerapkan Penyedia Penyimpanan Session-State.

Keterangan

Metode CreateUninitializedItem ini digunakan dengan sesi ketika cookieless atribut dan regenerateExpiredSessionId keduanya trueadalah . regenerateExpiredSessionId attribute Mengatur ke true menyebabkan SessionStateModule objek menghasilkan nilai baru SessionID saat nilai kedaluwarsa SessionID ditemui.

Proses pembuatan nilai baru SessionID memerlukan pengalihan browser ke URL yang berisi nilai yang baru dihasilkan SessionID . Metode CreateUninitializedItem ini dipanggil selama permintaan awal yang berisi nilai kedaluwarsa SessionID . SessionStateModule Setelah objek memperoleh nilai baru SessionID untuk menggantikan nilai kedaluwarsa, objek memanggil CreateUninitializedItem metode untuk menambahkan entri yang tidak diinisialisasi ke penyimpanan data status sesi. Browser kemudian dialihkan ke URL yang berisi nilai yang baru dihasilkan SessionID . Keberadaan entri yang tidak diinisialisasi di penyimpanan data sesi memastikan bahwa permintaan yang dialihkan yang menyertakan nilai yang baru dihasilkan SessionID tidak keliru untuk permintaan sesi yang kedaluwarsa dan sebaliknya, diperlakukan sebagai sesi baru.

Entri yang tidak diinisialisasi dalam penyimpanan data sesi dikaitkan dengan nilai yang baru dihasilkan SessionID dan hanya berisi nilai default, termasuk tanggal dan waktu kedaluwarsa actionFlags dan nilai yang sesuai dengan parameter GetItem metode dan GetItemExclusive . Entri yang tidak diinisialisasi di penyimpanan keadaan sesi harus menyertakan nilai yang actionFlags sama dengan InitializeItem nilai enumerasi. Nilai ini diteruskan ke SessionStateModule objek dengan GetItem metode dan GetItemExclusive , dan menginformasikan SessionStateModule objek bahwa sesi saat ini adalah sesi baru tetapi tidak diinisialisasi. Objek SessionStateModule kemudian akan menginisialisasi sesi baru dan menaikkan Session_OnStart acara.

Untuk informasi selengkapnya tentang sesi tanpa cookie, lihat IsCookieless properti .

Berlaku untuk

Lihat juga