在类中使用page对象用HttpContext.Current

比如在类中要使用Cache,用HttpContext.Current.Cache

Response,Request等一样.

如果要使用Page则:Page p=(Page)HttpContext.Current.Handler;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现网站在线人数和总访问人数统计程序,可以使用HTML语言结合JavaScript和后台服务器技术来完成。具体步骤如下: 1. 在HTML页面,添加显示在线人数和总访问人数的元素: ```html <div> 在线人数:<span id="online-count">0</span> 总访问人数:<span id="total-count">0</span> </div> ``` 2. 在JavaScript使用Ajax技术向后台服务器发送请求并获取在线人数和总访问人数: ```javascript function updateCounts() { var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { var counts = JSON.parse(xhr.responseText); document.getElementById("online-count").innerHTML = counts.online; document.getElementById("total-count").innerHTML = counts.total; } }; xhr.open("GET", "counts.aspx", true); xhr.send(); } ``` 其,`counts.aspx`是后台服务器的处理程序,用来获取在线人数和总访问人数并返回JSON格式的数据。 3. 在后台服务器使用ASP.Net的Session对象来统计在线人数和总访问人数,并在5分钟内没有访问的用户被认为离线: ```csharp protected void Page_Load(object sender, EventArgs e) { int onlineCount = 0; int totalCount = 0; foreach (string key in HttpContext.Current.Application.Keys) { object value = HttpContext.Current.Application[key]; if (value is DateTime && (DateTime)value > DateTime.Now.AddMinutes(-5)) { onlineCount++; } if (value is int) { totalCount += (int)value; } } if (HttpContext.Current.Session.IsNewSession) { HttpContext.Current.Application[HttpContext.Current.Session.SessionID] = DateTime.Now; HttpContext.Current.Application["TotalCount"] = totalCount + 1; } Response.Clear(); Response.ContentType = "application/json"; Response.Write("{\"online\": \"" + onlineCount + "\", \"total\": \"" + totalCount + "\"}"); Response.End(); } ``` 其使用`HttpContext.Current.Application`对象来保存在线用户的最后访问时间,如果用户的最后访问时间在5分钟内,则被认为是在线状态;使用`HttpContext.Current.Session`对象来判断用户是否是新会话,如果是新会话,则将总访问人数加1,并保存到`HttpContext.Current.Application`对象。最后,将在线人数和总访问人数以JSON格式的数据返回给客户端。 通过以上步骤,就可以实现网站在线人数和总访问人数的统计程序。需要注意的是,在实际应用,可以根据需求调整统计的精度和保存的方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值