void Application_Start(object sender, EventArgs e)
Application["OnlineUsers"] = 0;
void Session_Start(object sender, EventArgs e)
//啟動新工作階段時執行的程式碼
Application.Lock();
Application["OnlineUsers"] = (int)Application["OnlineUsers"] + 1;
Application.UnLock();
void Session_End(object sender, EventArgs e)
//工作階段結束時執行的程式碼。
//注意: 只有在 Web.config 檔將 sessionstate 模式設定為 InProc 時,
//才會引發 Session_End 事件。如果將工作階段模式設定為 StateServer
//或 SQLServer,就不會引發這個事件。
Application.Lock();
Application["OnlineUsers"] = (int)Application["OnlineUsers"] - 1;
Application.UnLock();
View 引用的部分
<p>線上人數:@HttpContext.Current.Application["OnlineUsers"] 人 </p>