利用Cache防止同一帐号重复登录 (c#)
来源:互联网 发布:丹麦安徒生博物馆知乎 编辑:程序博客网 时间:2024/05/18 02:06
我们只要把每次用户登录后的用户信息存储在Cache中,把Cache的Key名设为用户的登录名,Cache的过期时间设置为Session的超时时间,在用户每次登录的时候去判断一下Cache[用户名]是否有值,如果没有值,证明该用户没有登录,否则该用户已登录。
具体实现请看下例:
protected void btnLogin_Click(object sender, EventArgs e)
{
string strUser = string.Empty;
string strCacheKey = txtName.Text;
string pass = txtPass.Text;
string mac = GetMac();
strUser = Convert.ToString(Cache[strCacheKey]);
if (strUser == string.Empty)
{
TimeSpan SessTimeOut = new TimeSpan(0, 0, System.Web.HttpContext.Current.Session.Timeout, 0, 0);
Cache.Insert(strCacheKey, strCacheKey, null, DateTime.MaxValue, SessTimeOut, CacheItemPriority.NotRemovable, null);
Tbl_Users user = new Tbl_Users();
user = Tbl_UsersManage.GetUserByNameAndPass(strCacheKey, pass, out user);
if (user != null && user.vchUserMAC == mac)
{
Session["User"] = strCacheKey;
Response.Redirect("UserTest.aspx");
}
else
{
MessageBox.Show("用户不存在,请重新登录!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Question);
}
this.Label1.Text = Session["User"].ToString();
}
else
{
this.Label1.Text = "这个用户已经登录!";
}
}
- 利用Cache防止同一帐号重复登录 (c#)
- 利用Cache防止同一帐号重复登录 (c#)
- 利用Cache防止同一帐号重复登录
- 利用cache防止同一帐户重复登录
- 防止同一用户重复登录
- 防止帐号重复登录,本地有效
- 如何防止同一帐户重复登录系统
- 如何防止同一帐户重复登录系统
- 如何防止同一帐户重复登录系统
- 如何防止同一帐户重复登录系统
- 如何防止同一帐户重复登录系统
- 防止同一用户重复登录思路
- Java Web防止用户重复登录(同一用户同时登录)的一种实现方案
- java防止帐号重复登录、后登入用户踢前登入用户
- 如何防止同一帐户重复登录系统(ASP.net)
- 如何防止同一帐户重复登录系统(ASP.net)2
- 如何有效防止同一账户去重复登录系统
- 帐号重复登录处理
- firefox浏览shtml时直接显示源代码问题解决办法
- 【免费】Web2.0前端技术开发讲座
- hdc和hwnd的区别
- ORM的好处
- Http请求之 WebClient
- 利用Cache防止同一帐号重复登录 (c#)
- 解决关于SQL2005注册连接SQL2000查看表值函数时的"属性QuoteIdentifierStatus不可用于UserDefinedFunction"[dbo].[函数名]"……”的提示
- jQuery再学习之一、jQuery核心
- MyEclipse6.5注册机 破解码
- 岁月并不如烟
- C# 判断字符为空的6种方法和效率
- JDBC连接Oracle数据库,以及基本的插入查询操作
- 思考mysql内核之初级系列6---innodb文件管理
- jQuery再学习之二、jQuery选择器