HOW TO:讀取工作階段狀態的值
更新:2007 年 11 月
這個範例會存取 Item 屬性,以便在工作階段狀態下擷取值。
範例
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)
string firstName = (string)(Session["First"]);
string lastName = (string)(Session["Last"]);
string city = (string)(Session["City"]);
編譯程式碼
這項範例需要:
- 能夠使用已啟用工作階段狀態之 ASP.NET 應用程式中的 Current 屬性,存取目前要求內容的 Web Form 網頁或類別。
穩固程式設計
如果您嘗試從工作階段狀態取得不存在的值,不會擲回任何例外狀況。若要確定工作階段狀態中是否有您想要的值,請先測試以檢查物件是否存在,例如:
If Session.Item("FirstName") Is Nothing Then
' No such value in session state, take appropriate action.
End If
if (Session["City"] == null)
// No such value in session state; take appropriate action.
如果您嘗試以其他方式使用不存在的工作階段狀態項目 (例如,檢查其型別),則會擲回 NullReferenceException 例外狀況。
工作階段值屬於 Object 型別。如果您在 Visual Basic 中將 Option Strict 設定為 On,當從工作階段狀態取得值時,必須從 Object 型別轉換成適當的型別,如範例所示。在 C# 中,當讀取工作階段值時,您必須轉換至適當的型別。