ASP.NET范例完全自学手册疑问
发表在ASP.NET图书答疑 2011-04-02
是否精华
版块置顶:
《ASP.NET范例完全自学手册》中的明日聊天室 源码文件位置:MR/11/114/SL /ROOM.ASPX.CS
1.不理解 bindUserList()中
select * from roomUser where datediff(s,state,getdate())>5 and datediff(s,state,getdate())<9
这样就能判断用户离线了么,为什么要大于5且小于9呢?
2.还有就是在运行测试的时候在一个用户退出后会显示两次或三次不等的“系统信息提示XXX离开聊天室”,正常的应该只显示一次的,对应的代码为
for (int i = 0; i < dtOut.Rows.Count; i++)
        {
            //创建SQL语句,插入退出提示信息
            string sqlOut = "insert into  roomMsg values('','','系统信息提示【" + dtOut.Rows[i][1] + "】离开聊天室','','ff0000','0',getdate());";
            //执行SQL语句
            operateData.execSql(sqlOut);
        }
3.不理解showMsg()中
string sqlSel = "select  * from roomMsg where  msg_id>" + msgCount + "  and  (msg_ispublic=0 or msg_from='" + Session["name"] + "' or msg_receiver='" + Session["name"] + "' or msg_receiver ='所有人') and (msg_sendtime>getdate()-'00:05:00' ) ";
中(msg_sendtime>getdate()-'00:05:00' ) "的意思,为啥要-5S呢
望指教为感!
分享到:
精彩评论 3
婷子_mrkj
学分:0 LV1
TA的每日心情
开心
2021-12-05 20:14:32
2011-04-06
沙发
您好!
  感谢您对我公司图书的支持!
1.创建SQL语句,查询用户登录时间和当前时间秒数相差5至9秒的用户。
2.显示不等的系统提示,是因为该循环遍历的条件是i<dtOut.Rows.Count;i的初始值是1,只要满足i<dtOut.Rows.Count,提示语句就会执行一次。
3.这段语句是显示与当前时间相差5分钟的所有记录
kobecjdsb
学分:0 LV1
TA的每日心情
好好学习
2021-11-29 20:57:38
2011-04-06
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
您好!
  感谢您对我公司图书的支持!
1.创建SQL语句,查询用户登录时间和当前时间秒数相差5至9秒的用户。
2.显示不等的系统提示,是因为该循环遍历的条件是i<dtOut.Rows.Count;i的初始值是1,只要满足i<dtOut.Rows.Count,提示语句就会执行一次。
3.这段语句是显示与当前时间相差5分钟的所有记录
[/FIELDSET]

回复:
十分感谢您的回答,其实我第一个问题的意思是离线的判断问题,5和9是随意定的数字么,为什么要检索登录时间差为5至9秒的用户,直接大于3或者4不行么;设置上限为9是为什么,设置成7,8或者无上限不也能检索出离线列表么
小科_mrkj
学分:43 LV2
2011-04-07
地板
读者朋友:
    您好,这个时间设置可以随便设置,这里只是作者开发该程序时设置的两个值。
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照