• Global


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.SessionState;
    using System.Text.RegularExpressions;
    using System.Data;
    namespace Web
    {
        public class Global : System.Web.HttpApplication
        {
                    protected void Application_Start(object sender, EventArgs e)
            {
                DataTable dtS = DBUtility.DbHelperSQL.Query("select * from 表名").Tables[0];
                DataTable dtT = DBUtility.DbHelperSQL.Query("select * from 表名").Tables[0];
                int count = dtS.Rows.Count + dtT.Rows.Count;
                Application.Add("total", count);
                Application.Add("online", 0);
            }
    
            protected void Session_Start(object sender, EventArgs e)
            {
                Application.Lock();//关闭会话,解决同时发生的情况
                Application["total"] = (int)Application["total"] + 1;//总的访问量加1
                Application["online"] = (int)Application["online"] + 1;//当前在线人数加1
                Application.UnLock();
            }
    
            protected void Application_BeginRequest(object sender, EventArgs e)
            {
                // 非法字符过滤
                Security.FilterModule.Filter(Request);
            }
    
            protected void Application_AuthenticateRequest(object sender, EventArgs e)
            {
    
            }
    
            protected void Application_Error(object sender, EventArgs e)
            {
    
            }
    
            protected void Session_End(object sender, EventArgs e)
            {
                Application.Lock();//锁
                Application["online"] = (int)Application["online"] - 1;//当前在线人数减1
                if(Session["usertype"].ToString()=="student")
                {
                    DataTable dt = DBUtility.DbHelperSQL.Query("select * from 表名 where  Day(CreateTime)=Day(getdate()) and UserName='" + Session["username"] + "'").Tables[0];
                    if (dt.Rows.Count > 0)
                    {
                        smodel = sbll.GetModel(int.Parse(dt.Rows[0]["Id"].ToString()));
                        smodel.Online = false;
                        smodel.ExitTime = DateTime.Now;
                        smodel.UpdateTime = DateTime.Now;
                        sbll.Update(smodel);
                    }
                }
                if (Session["usertype"].ToString() == "teacher")
                {
                    DataTable dt = DBUtility.DbHelperSQL.Query("select * from 表名 where Day(CreateTime)=Day(getdate()) and UserName='" + Session["username"] + "'").Tables[0];
                    if (dt.Rows.Count > 0)
                    {
                        tmodel = tbll.GetModel(int.Parse(dt.Rows[0]["Id"].ToString()));
                        tmodel.Online = false;
                        tmodel.ExitTime = DateTime.Now;
                        tmodel.UpdateTime = DateTime.Now;
                        tbll.Update(tmodel);
                    }
                }
                Application.UnLock();//解锁
            }
    
            protected void Application_End(object sender, EventArgs e)
            {
    
            }
        }
    }
    
    本人声明: 个人主页:沐海(http://www.cnblogs.com/mahaisong) 以上文章都是经过本人设计实践和阅读其他文档得出。如果需要探讨或指教可以留言或加我QQ!欢迎交流!
  • 相关阅读:
    两个路由器配置静态路由只能单边 ping 通
    CVE202125646:Apache Druid远程命令执行漏洞复现
    批量修改图片的格式
    十大远程控制软件排名
    Splashtop 免费60天 大赠送
    单例设计模式
    蓄水池抽样算法/水塘采样算法
    kafka安装(单机版)
    LeetCode382链表随机节点
    LeetCode398随机数索引
  • 原文地址:https://www.cnblogs.com/mahaisong/p/2017842.html
Copyright © 2020-2023  润新知