SessionStateStoreProviderBase.SetAndReleaseItemExclusive 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用当前请求中的值更新会话状态数据存储区中的会话项信息,并清除对数据的锁定。
public:
abstract void SetAndReleaseItemExclusive(System::Web::HttpContext ^ context, System::String ^ id, System::Web::SessionState::SessionStateStoreData ^ item, System::Object ^ lockId, bool newItem);
public abstract void SetAndReleaseItemExclusive (System.Web.HttpContext context, string id, System.Web.SessionState.SessionStateStoreData item, object lockId, bool newItem);
abstract member SetAndReleaseItemExclusive : System.Web.HttpContext * string * System.Web.SessionState.SessionStateStoreData * obj * bool -> unit
Public MustOverride Sub SetAndReleaseItemExclusive (context As HttpContext, id As String, item As SessionStateStoreData, lockId As Object, newItem As Boolean)
参数
- context
- HttpContext
当前请求的 HttpContext。
- id
- String
当前请求的会话标识符。
包含要存储的当前会话值的 SessionStateStoreData 对象。
- lockId
- Object
当前请求的锁定标识符。
- newItem
- Boolean
如果为 true
,则将会话项标识为新项;如果为 false
,则将会话项标识为现有的项。
示例
有关会话状态存储提供程序实现的示例,请参阅 实现 Session-State 存储提供程序。
注解
对象SessionStateModule在事件期间ReleaseRequestState在请求结束时调用 SetAndReleaseItemExclusive 方法,以将当前会话项信息插入数据存储或使用当前值更新数据存储区中的现有会话项信息、更新项的过期时间以及释放对数据的锁定。 仅更新与提供的会话和lockId
值匹配的当前应用程序的会话id
数据。 有关锁定的详细信息,请参阅类概述中的 SessionStateStoreProviderBase “锁定会话存储数据”。
如果当前请求的会话值尚未修改, SetAndReleaseItemExclusive 则不调用 方法。 ReleaseItemExclusive而是调用 方法。
Abandon如果已调用方法,SetAndReleaseItemExclusive则不调用 该方法。 相反, SessionStateModule 对象调用 RemoveItem 方法以从数据源中删除会话项数据。