SessionStateStoreProviderBase.GetItemExclusive 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
세션 데이터 저장소에서 읽기 전용 세션 상태 데이터를 반환합니다.
public:
abstract System::Web::SessionState::SessionStateStoreData ^ GetItemExclusive(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 GetItemExclusive (System.Web.HttpContext context, string id, out bool locked, out TimeSpan lockAge, out object lockId, out System.Web.SessionState.SessionStateActions actions);
abstract member GetItemExclusive : System.Web.HttpContext * string * bool * TimeSpan * obj * SessionStateActions -> System.Web.SessionState.SessionStateStoreData
Public MustOverride Function GetItemExclusive (context As HttpContext, id As String, ByRef locked As Boolean, ByRef lockAge As TimeSpan, ByRef lockId As Object, ByRef actions As SessionStateActions) As SessionStateStoreData
매개 변수
- context
- HttpContext
현재 요청에 대한 HttpContext.
- locked
- Boolean
이 메서드가 반환될 때 잠금을 성공적으로 가져오는 경우 true
설정되는 부울 값이 포함됩니다. 그렇지 않으면 false
.
- lockId
- Object
이 메서드가 반환되면 현재 요청에 대한 잠금 식별자로 설정된 개체가 포함됩니다. 잠금 식별자에 대한 자세한 내용은 SessionStateStoreProviderBase 클래스 요약에서 "Session-Store 데이터 잠금"을 참조하세요.
- actions
- SessionStateActions
이 메서드가 반환될 때 현재 세션이 초기화되지 않은 쿠키 없는 세션인지 여부를 나타내는 SessionStateActions 값 중 하나가 포함됩니다.
반환
세션 데이터 저장소의 세션 값 및 정보로 채워진 SessionStateStoreData.
예제
세션 상태 저장소 공급자 구현의 예는 Session-State Store 공급자구현을 참조하세요.
설명
SessionStateModule 개체는 EnableSessionState 특성이 기본값인 true
설정된 AcquireRequestState 이벤트 중에 요청 시작 시 GetItemExclusive 메서드를 호출합니다.
EnableSessionState 특성이 ReadOnly
설정되면 SessionStateModule 개체는 대신 GetItem 메서드를 호출합니다.
GetItemExclusive 메서드는 데이터 저장소의 세션 정보로 채워진 SessionStateStoreData 개체를 반환하고, 저장된 데이터의 만료 날짜를 업데이트하고, 요청 기간 동안 데이터 저장소의 세션 항목 데이터를 잠급니다. 데이터 저장소에 세션 항목 데이터가 없으면 GetItemExclusive 메서드는 locked
out
매개 변수를 false
설정하고 null
반환합니다. 이렇게 하면 SessionStateModule 개체가 CreateNewStoreData 메서드를 호출하여 데이터 저장소에 새 세션 항목을 만듭니다. 세션 항목 데이터가 데이터 저장소에 있지만 데이터가 잠겨 있는 경우 GetItemExclusive 메서드는 locked
out
매개 변수를 true
설정하고, lockAge
out
매개 변수를 현재 날짜 및 시간으로 설정하고, 항목이 잠긴 날짜와 시간을 뺀 날짜 및 시간(데이터 저장소에서 검색됨)을 뺀 값으로 lockId
out
매개 변수를 데이터 저장소에서 검색된 잠금 식별자에 설정합니다. null
반환합니다. 이렇게 하면 SessionStateModule 개체가 세션 항목 정보를 검색하고 데이터에 대한 잠금을 얻기 위해 반초 간격 후에 GetItemExclusive 메서드를 다시 호출합니다.
lockAge
out
매개 변수가 ExecutionTimeout 값을 초과하도록 설정된 경우 SessionStateModuleReleaseItemExclusive 메서드를 호출하여 세션 항목 데이터에 대한 잠금을 지우고 GetItemExclusive 메서드를 다시 호출합니다.
actionFlags
매개 변수는 cookieless
및 regenerateExpiredSessionId
특성이 모두 true
설정되면 사용됩니다.
InitializeItem 설정된 actionFlags
값은 세션 데이터 저장소의 항목이 초기화가 필요한 새 세션임을 나타냅니다. 세션 데이터 저장소에서 초기화되지 않은 항목은 CreateUninitializedItem 메서드를 호출하여 생성됩니다. 세션 데이터 저장소의 항목이 초기화되지 않은 항목이 아니면 actionFlags
매개 변수가 0으로 설정됩니다.
쿠키 없는 세션을 지원하는 사용자 지정 세션 상태 저장소 구현자는 actionFlags
out
매개 변수를 현재 항목에 대한 세션 데이터 저장소에서 반환된 값으로 설정해야 합니다. 요청된 세션 저장소 항목에 대한 actionFlags
매개 변수 값이 InitializeItem 열거형 값과 같으면 GetItemExclusive 메서드는 actionFlags
out
매개 변수를 설정한 후 데이터 저장소의 값을 0으로 설정해야 합니다.
적용 대상
추가 정보
.NET