怎样不用Application和Session统计在线人数???

yezie 2003-08-30 02:38:59
用数据库而不用Application和Session

怎么写??
...全文
77 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
saucer 2003-08-31
  • 打赏
  • 举报
回复
参考
Preventing Multiple Logins in ASP.NET
http://www.eggheadcafe.com/articles/20030418.asp
yezie 2003-08-31
  • 打赏
  • 举报
回复
up
yezie 2003-08-30
  • 打赏
  • 举报
回复
不用Session的问题是怎么判断用户是新来的还是已经在的,

就是怎样避免把重复的用户写入数据库
stpangpang 2003-08-30
  • 打赏
  • 举报
回复
用Session 统计的人数 不一定是准确的 ~~~ 一般在 Session_end事件中将人数减一,但是如果用户 刚登陆 就直接关闭ie ,就不会触发 Session_end 事件 ,所以/。。。。
不知道 有没有好的方法 统计再线人数~~~~
seesea125 2003-08-30
  • 打赏
  • 举报
回复
登陆时可以知道他登陆,离开时如果不用session,就不好知道他是否离开了,这事不好办,
建议用session,
thinboyxp 2003-08-30
  • 打赏
  • 举报
回复
用数据库。
using System; using System.Data; using System.Text; namespace ZKXP.BLL { /// /// OnLine 的摘要说明。 /// public class OnLine { private string USERNAME; private int OFFLINEDIFF; private int REMOVEDIFF; public OnLine() { //直接在这里设定、或从配置文件中读取配置参数 ///存放用户名的Session名 USERNAME = "UserName"; ///多少分钟不活动的用户从在线列表中删除 OFFLINEDIFF = 5; ///多少秒执行一次删除不活动用户 REMOVEDIFF = 30; if(System.Web.HttpContext.Current.Application["OnlineTalbe"] == null) { this.CashTableInit(); } } public void CheckOnline() { //从Application获取数据表、获取SessionID DataTable dtOnline; dtOnline = (DataTable)System.Web.HttpContext.Current.Application["OnlineTalbe"]; string sessionId = System.Web.HttpContext.Current.Session.SessionID.ToString(); //数据表中是否有我的记录 DataRow drFind = dtOnline.Rows.Find(sessionId); if(drFind != null) { //有;更新我的状态 Info.Write("更新"); drFind["LastActiveTime"] = DateTime.Now; drFind["UserWhere"] = this.AtWhere; //用户由访客状态变为了登陆会员、或反之 if(Extend.GetSession(USERNAME) != null) { drFind["VisitorName"] = Extend.GetSession(USERNAME); drFind["VisitorLevel"] = Extend.GetSession("UserLevel"); } else { drFind["VisitorName"] = "vst"; drFind["VisitorLevel"] = -1; } } else { //无;加入关于我的在线信息 Info.Write("插入"); DataRow drNew = dtOnline.NewRow(); drNew["SessionID"] = sessionId; drNew["Visit

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧