保存/读取会话状态中的值(Session)

 此示例使用 HttpSessionState 对象持久保留单个会话中的值。
示例
Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl06VisualBasic');] 复制代码[/url]
Dim firstName As String = "John"Dim lastName As String = "Smith"Dim city As String = "Seattle"Session("FirstName") = firstNameSession("LastName") = lastNameSession("City") = city
C#
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl07CSharp');] 复制代码[/url]
string firstName = "Jeff";string lastName = "Smith";string city = "Seattle";Session["FirstName"] = firstName;Session["LastName"] = lastName;Session["City"] = city;
编译代码
此示例需要:
一个 Web 窗体页或类,它可以在启用了会话状态的 ASP.NET 应用程序中使用 Current 属性访问当前请求上下文。
可靠编程
会话状态可能会过期(默认情况下,在处于不活动状态 20 分钟后过期),而在其中存储的信息可能会丢失。可以使用 sessionState 配置节的 timeout 属性控制会话状态生存期。

===========================================================================================

Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl06VisualBasic');] 复制代码[/url]
Dim firstName as String = CType(Session.Item("FirstName"), String)Dim lastName as String = CType(Session.Item("LastName"), String)Dim city as String = CType(Session.Item("City"), String)
C#
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl07CSharp');] 复制代码[/url]
string firstName = (string)(Session["First"]);string lastName = (string)(Session["Last"]);string city = (string)(Session["City"]);
编译代码
此示例需要:
一个 Web 窗体页或类,它可以在启用了会话状态的 ASP.NET 应用程序中使用 Current 属性访问当前请求上下文。
可靠编程
如果尝试从不存在的会话状态中获取值,则不会引发任何异常。若要确保所需的值在会话状态中,请首先使用测试(例如以下测试)检查该对象是否存在:
Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl19VisualBasic');] 复制代码[/url]
If Session.Item("FirstName") Is Nothing Then    ' No such value in session state, take appropriate action.End If
C#
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl20CSharp');] 复制代码[/url]
if (Session["City"] == null)     // No such value in session state; take appropriate action.
如果您尝试通过某些其他方法(例如,检查其类型)使用不存在的会话状态项,就会引发 NullReferenceException 异常。

你可能感兴趣的:(Dot,Net)