Kan*_*hka 7 c# asp.net web-config
我正在开发一个有 3 种用户的网络应用程序。
为了避免同一用户多次登录,我在表中使用了登录列,登录后该列将变为 1,注销后将变为 0。如果用户关闭浏览器窗口而不注销,我已使用会话状态来注销用户。
<system.web>
<sessionState mode="InProc" timeout="15" cookieName="student"/>
Run Code Online (Sandbox Code Playgroud)
全局.asax:
void Session_End(object sender, EventArgs e)
{
int sid = Convert.ToInt32(Session["student"]);
candidate.signoutUser(sid);
}
Run Code Online (Sandbox Code Playgroud)
但用户分为三类。我无法添加多个sessionState. 有办法解决这个问题吗?
为什么不将用户类型添加到其会话状态中?
像这样 :
Session["user"] = "Strudent_" + userId;
Run Code Online (Sandbox Code Playgroud)
然后解析您的单个会话以查找 ID 和用户类型:
var userType = Session["user"].ToString().split('_')[0];
var userId = Convert.ToInt32(Sessionp["user"].ToString().split('_')[1];)
Run Code Online (Sandbox Code Playgroud)
但我建议使用会话状态:
如果您不想也使用多个会话状态,您还可以使用 userId 从数据库查询用户类型。
| 归档时间: |
|
| 查看次数: |
17746 次 |
| 最近记录: |