Asp.net MVC4 记录在线用户数及登录时长
Global.asax.cs文件
public class MvcApplication : System.Web.HttpApplication
{
/// <summary>
/// 全局事件开始
/// </summary>
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
Application.Lock();
Application["online"] = ;
Application.UnLock();
}
/// <summary>
/// 全局事件结束
/// </summary>
protected void Application_End()
{ }
/// <summary>
/// 单个用户事件开始
/// </summary>
protected void Session_Start()
{
Application.Lock();
int online = (int)Application["online"];
Application["online"] = online + ;
Session["LoginDate"] = DateTime.Now;
Application.UnLock();
}
/// <summary>
/// 单个用户事件结束
/// </summary>
protected void Session_End()
{
Application.Lock();
int online = (int)Application["online"];
Application["online"] = online - ;
Application.UnLock();
}
}
Controller
[HttpPost]
public string LoginCheck()
{
if (Session["LoginDate"] == null)
{
Session["LoginDate"]=DateTime.Now;
return "登录超时!";
}
DateTime loginDate = Convert.ToDateTime(Session["LoginDate"]);
TimeSpan ts = DateTime.Now - loginDate; //记算当时间时与Session中保存的时间差
string str = string.Format("已经登录{0}天{1}小时{2}分{3}秒", ts.Days, ts.Hours, ts.Minutes, ts.Seconds); //格式化输出
return str;
}
Html
<span id="online"></span>
<span id="LoginInfo"></span>
jQuery
<script type="text/javascript">
$(function () {
AjaxHtml();
});
function AjaxHtml() {
LoginCheck();
OnLineCheck();
setInterval(function () {
LoginCheck();
}, 10000);//登录时间显示每10秒更新一次
setInterval(function () {
OnLineCheck();
}, 60000);//在线人数每60秒更新一次
}
function LoginCheck() {
$.post('/LoginInfo/LoginCheck', {}, function (result) {
$("#LoginInfo").html(result);
});
}
function OnLineCheck() {
$("#online").html('在线人数 <span style="color:red;">@System.Web.HttpContext.Current.Application["online"]</span>');
}
</script>
Asp.net MVC4 记录在线用户数及登录时长的更多相关文章
- 从零开始实现asp.net MVC4框架网站的用户登录以及权限验证模块 详细教程
从零开始实现asp.net MVC4框架网站的用户登录以及权限验证模块 详细教程 用户登录与权限验证是网站不可缺少的一部分功能,asp.net MVC4框架内置了用于实现该功能的类库,只需要简单搭 ...
- ASP.NET MVC4中使用bootstrip模态框时弹不出的问题
最近发现使用在MVC中使用bootstrip的模态框时弹不出来,但单独建立一HTML文件时可以弹出,说明代码没有问题,经过多次测试发现,在MVC的cshtml文件中添加上以下语句就能正常 @{ Lay ...
- asp.net mvc4 HTTP Error 403.14
asp.net mvc4项目部署到II&上时,出现HTTP Error 403.14 - Forbidden - The Web server is configured to not lis ...
- asp.net mvc4 过滤器的简单应用:登录验证
直接上代码,不要说话. ASP.NET MVC4过滤器的简单应用:验证登录 [AcceptVerbs(HttpVerbs.Post)] public ActionResult login(FormCo ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(19)-权限管理系统-用户登录
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(19)-权限管理系统-用户登录 我们之前做了验证码,登录界面,却没有登录实际的代码,我们这次先把用户登录先 ...
- ASP.NET MVC4简单使用ELMAH记录系统日志
ASP.NET MVC4简单使用ELMAH记录系统日志 前言 在项目开发.测试以及已经上线的项目中都会存在bug,而如果我们在项目的各个阶段都能及时的监控系统出现的任何问题,那么对于我们开发人员来说完 ...
- 初入码田--ASP.NET MVC4 Web应用开发之一 实现简单的登录
初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查 2016-07-24 一.创建T4模板,建 ...
- asp.net mvc4 登录界面
说明:开发环境 asp.net mvc4 c#语言 1.项目目录结构 2.Login控制器中 public ActionResult Index() { return View(); } 对应Inde ...
- ASP.NET MVC4 学习记录
之前在学习Artech的<ASP.NET MVC4框架揭秘>一书,学习过程中画了ASP.NET MVC4框架的草图,方便记忆.
随机推荐
- 转)安装svn服务器
以下转载自:http://www.linuxidc.com/Linux/2015-01/111956.htm 安装 安装软件包: sudo apt-get install subversion 配置 ...
- ios 点击Home问题
应用可以在后台运行或者挂起,该场景的状态跃迁过程见图2-22,共经历3个阶段4个状态:Active → Inactive → Background→Suspended. q 在Active→Ina ...
- 在IE10下,DropDownList的AutoPostBack不能触发
Default.aspx 文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile=" ...
- 17-js 提交表单以及判空
js
- Combobox实现多项选择 Silverlight下“Combobox”怎样实现多项选择?
把 combobox里面的项换成checkedbox 示例: combobox cbb=new combobox(); ) { CheckBox cb = new CheckBox(); cb.Com ...
- vue-awesome-swiper插件
http://www.cnblogs.com/songrimin/p/6905136.html 这个地址不错 在上一些我的demo代码 第一步安装 npm install vue-awesome-sw ...
- C语言字符串操作函数实现
1.字符串反转 – strRev void strRev(char *str) { assert(NULL != str); int length=strlen(str); ; while(end ...
- chrome 调试工具的使用
Elements chrome devtools 中 Elements panel 是审查 dom 元素和 css 的, 可以实时修改 dom/css. windows: ctrl + shift + ...
- 品味性能之道<十>:Oracle Hint
Hint 是Oracle 提供的一种SQL语法,它允许用户在SQL语句中插入相关的语法,从而影响SQL的执行方式. 因为Hint的特殊作用,所以对于开发人员不应该在代码中使用它,Hint 更像是Ora ...
- Ui设计流行趋势,对颜色的探讨
设计风向转换的趋势越来越短,在设计圈中,流行设计的跟新换代更是快.在设计时间越来越短的今天,在经理领导不断催促的时下,如何准确的把握当下的流行趋势,如何在设计之初就能定好设计的基调.这对于还是刚入设计 ...