共用方式為


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# 中,當讀取工作階段值時,您必須轉換至適當的型別。

請參閱

概念

ASP.NET 檢視狀態概觀

ASP.NET 狀態管理概觀

ASP.NET 狀態管理建議事項

ASP.NET 狀態管理概觀