SessionStateStoreProviderBase.GetItem 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.
Oturum veri deposundan salt okunur oturum durumu verilerini döndürür.
public:
abstract System::Web::SessionState::SessionStateStoreData ^ GetItem(System::Web::HttpContext ^ context, System::String ^ id, [Runtime::InteropServices::Out] bool % locked, [Runtime::InteropServices::Out] TimeSpan % lockAge, [Runtime::InteropServices::Out] System::Object ^ % lockId, [Runtime::InteropServices::Out] System::Web::SessionState::SessionStateActions % actions);
public abstract System.Web.SessionState.SessionStateStoreData GetItem(System.Web.HttpContext context, string id, out bool locked, out TimeSpan lockAge, out object lockId, out System.Web.SessionState.SessionStateActions actions);
abstract member GetItem : System.Web.HttpContext * string * bool * TimeSpan * obj * SessionStateActions -> System.Web.SessionState.SessionStateStoreData
Public MustOverride Function GetItem (context As HttpContext, id As String, ByRef locked As Boolean, ByRef lockAge As TimeSpan, ByRef lockId As Object, ByRef actions As SessionStateActions) As SessionStateStoreData
Parametreler
- context
- HttpContext
HttpContext Geçerli istek için.
- locked
- Boolean
Bu yöntem döndürdüğünde, istenen oturum öğesi oturum veri deposunda kilitliyse olarak ayarlanmış true bir Boole değeri içerir; aksi takdirde, false.
- lockAge
- TimeSpan
Bu yöntem döndürdüğünde, oturum veri deposundaki bir TimeSpan öğenin kilitlendiği süreye ayarlanmış bir nesne içerir.
- lockId
- Object
Bu yöntem döndürdüğünde, geçerli isteğin kilit tanımlayıcısına ayarlanmış bir nesne içerir. Kilit tanımlayıcısı hakkında ayrıntılı bilgi için sınıf özetindeki SessionStateStoreProviderBase "Session-Store Verileri Kilitleme" bölümüne bakın.
- actions
- SessionStateActions
Bu yöntem döndürdüğünde, geçerli oturumun SessionStateActions başlatılmamış, tanımlama bilgisi olmayan bir oturum olup olmadığını gösteren değerlerden birini içerir.
Döndürülenler
Oturum SessionStateStoreData veri deposundaki oturum değerleri ve bilgilerle doldurulmuş.
Örnekler
Oturum durumu depolama sağlayıcısı uygulaması örneği için bkz. Session-State Deposu Sağlayıcısı Uygulama.
Açıklamalar
SessionStateModule nesnesi, özniteliği olarak ayarlandığında GetItemolay sırasında AcquireRequestState isteğin EnableSessionState başında yöntemini çağırırReadOnly.
EnableSessionState özniteliği olarak trueSessionStateModule ayarlanırsa, nesne bunun yerine yöntemini çağırırGetItemExclusive.
yöntemi, GetItem veri deposundaki oturum bilgileriyle doldurulmuş bir SessionStateStoreData nesne döndürür ve oturum verilerinin sona erme tarihini güncelleştirir. Veri deposunda hiçbir oturum öğesi verisi bulunmazsa yöntemi GetItem parametresini lockedout olarak false ayarlar ve döndürür null. Bu, nesnesinin SessionStateModule veri deposunda yeni bir oturum öğesi oluşturmak için yöntemini çağırmasına CreateNewStoreData neden olur.
Oturum öğesi verileri veri deposunda bulunur ancak veriler kilitliyse, yöntemi parametresini olarak ayarlarGetItemlocked, out parametreyi geçerli tarih ve saat olarak ayarlartruelockAge; öğenin kilitlendiği tarih ve saat çıkarılır (veri deposundan alınır), parametreyi veri deposundan alınan kilit tanımlayıcısına ayarlaroutlockId,out ve döndürürnull. Bu, nesnenin SessionStateModuleGetItem oturum öğesi bilgilerini almayı denemesi için yarım saniyelik bir aralık sonrasında yöntemini yeniden çağırmasına neden olur.
Parametresinin lockAgeout değeri aşacak ExecutionTimeout şekilde ayarlanmışsa, SessionStateModule nesnesi session-item verilerinde kilidi temizlemek için yöntemini çağırır ReleaseItemExclusive ve sonra yöntemini yeniden çağırır GetItem .
actionFlags parametresi, hem ve cookielessregenerateExpiredSessionId öznitelikleri olarak trueayarlandığında kullanılır.
actionFlags olarak ayarlanan InitializeItem bir değer, oturum veri deposundaki girişin başlatma gerektiren yeni bir oturum olduğunu gösterir. Oturum veri deposundaki başlatılmamış girdiler yöntemine CreateUninitializedItem yapılan bir çağrıyla oluşturulur. Oturum veri deposundaki öğe başlatılmamış bir öğe değilse, actionFlags parametre sıfır olarak ayarlanır.
Tanımlama bilgisi olmayan oturumları destekleyen özel oturum durumu deposu uygulayıcıları, parametresini actionFlagsout geçerli öğe için oturum veri deposundan döndürülen değere ayarlamalıdır. İstenen oturum deposu öğesinin actionFlags parametre değeri numaralandırma değerine eşitse InitializeItem , yöntemin GetItem parametreyi ayarladıktan sonra veri deposundaki değeri sıfır olarak ayarlaması actionFlagsout gerekir.