此示例使用
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 异常。
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl06VisualBasic');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
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');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
string firstName = "Jeff";string lastName = "Smith";string city = "Seattle";Session["FirstName"] = firstName;Session["LastName"] = lastName;Session["City"] = city;
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
此示例需要:
一个 Web 窗体页或类,它可以在启用了会话状态的 ASP.NET 应用程序中使用 Current
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
会话状态可能会过期(默认情况下,在处于不活动状态 20 分钟后过期),而在其中存储的信息可能会丢失。可以使用 sessionState
=================
Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl06VisualBasic');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
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');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
string firstName = (string)(Session["First"]);string lastName = (string)(Session["Last"]);string city = (string)(Session["City"]);
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
此示例需要:
一个 Web 窗体页或类,它可以在启用了会话状态的 ASP.NET 应用程序中使用 Current
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
如果尝试从不存在的会话状态中获取值,则不会引发任何异常。若要确保所需的值在会话状态中,请首先使用测试(例如以下测试)检查该对象是否存在:
Visual Basic
[url=javascript:CopyCode('ctl00_rs1_mainContentContainer_ctl19VisualBasic');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
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');]
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
if (Session["City"] == null) // No such value in session state; take appropriate action.
如果您尝试通过某些其他方法(例如,检查其类型)使用不存在的会话状态项,就会引发 NullReferenceException