2012-09-10 74 views
0

我想检索C#中特定会话变量的会话ID。如何从特定的会话变量检索会话ID

Session["OrderDetailList"] = OrderDetailsList; 

我在想什么,我想保存列表在会话中,也想存储它的会话ID在cookie中。

此外当我从cookie中检索会话ID,然后我能够保存从cookie中检索会话ID的会话变量的值。

我们该怎么做?

+0

一个SessionID的是整个会话,而不是为特定的会话变量。在上面的例子中,列表本身没有任何唯一的会话ID。会话ID是唯一的,并且共享该特定会话中存储的所有值。另外,你能澄清你的第二句话 - 至少我觉得它是特别令人困惑的 – InSane

+0

我的第二句话意味着我必须从Cookie检索会话ID,并从该会话ID我们可以获取会话值 –

+0

好吧。我认为如何检索SessionID已经在KnowledgeSeeker以及AVD的答案中得到了回答。此外,要获得会话值,例如:OrderDetailsList,则根本不需要使用SessionID。只是做Session [“OrderDetailList”]就足够了 – InSane

回答

0
/ In a user control or page 
string sessionId = this.Session.SessionID; 

// In a normal class, running in a asp.net app. 
string sessionId = System.Web.HttpContext.Current.Session.SessionID; 

在这旁边我还建议签这个好文章

Exploring Session in ASP.NET

+0

ok如何从会话ID中找到会话变量。是否有可能从会话ID获取会话变量 –

+0

您可以使用正则表达式来执行全局搜索 这样的事情可能会诀窍 '(?:Session \ [。+ \] \ s * = | Session.Add )' 第一部分讲述通过assigment创建会话变量:Session [“MyVarName”] = myValue 第二部分介绍使用Add方法创建会话变量:'Session.Add(“MyVarName”,myValue)'' – Learning

1

如何从特定会话变量中检索会话ID?

不可以。阅读MSDN document for more info.

默认情况下,会话使用饼干保存SessionID并且你可以通过在服务器的代码 Session对象获得的SessionID。