ASP.NET MVC4计划任务实现方法(定时执行某个功能)
1、首先修改Glocal.asax文件,在Application_Start方法最下面加入:
//定义定时器
//1000表示1秒的意思
System.Timers.Timer myTimer = new System.Timers.Timer();
//TaskAction.SetContent 表示要调用的方法
myTimer.Elapsed += new System.Timers.ElapsedEventHandler(TaskAction.SetContent);
myTimer.Enabled = true;
myTimer.AutoReset = true;
以上代码在应用程序启动时运行
2、在Glocal.asax文件中加入如下方法:
void Session_End(object sender, EventArgs e)
{
//下面的代码是关键,可解决IIS应用程序池自动回收的问题
System.Threading.Thread.Sleep();
//触发事件, 写入提示信息
TaskAction.SetContent();
//这里设置你的web地址,可以随便指向你的任意一个aspx页面甚至不存在的页面,目的是要激发Application_Start
//使用您自己的URL
string url = "http://localhost:3813";
System.Net.HttpWebRequest myHttpWebRequest = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
System.Net.HttpWebResponse myHttpWebResponse = (System.Net.HttpWebResponse)myHttpWebRequest.GetResponse();
System.IO.Stream receiveStream = myHttpWebResponse.GetResponseStream();//得到回写的字节流 // 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为 InProc 时,才会引发 Session_End 事件。
// 如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
}
3、创建以上两个方法用到的类:
public static class TaskAction
{
private static string content = "";
/// <summary>
/// 输出信息存储的地方.
/// </summary>
public static string Content
{
get { return TaskAction.content; }
set { TaskAction.content += "<div>" + value + "</div>"; }
}
/// <summary>
/// 定时器委托任务 调用的方法
/// </summary>
/// <param name="source"></param>
/// <param name="e"></param>
public static void SetContent(object source, ElapsedEventArgs e)
{
if (DateTime.Now.ToString("HH:mm:ss") == "11:35:00")
{
//这里写你定时执行的代码
Content = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"+"下班了!");
}
}
/// <summary>
/// 应用池回收的时候调用的方法
/// </summary>
public static void SetContent()
{
Content = "END: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
}
上面的“//这里写你定时执行的代码”中写你要执行的操作即可,这里展示的是在11:35时提醒用户下班了。需要刷新一下网页。
通过上面方法可以实现定时添加记录,或记录检查等任务,以后有完成定时任务都可以用这种方法实现了
引用:http://www.kwstu.com/ArticleView/dabaomvc_201409091155382759
ASP.NET MVC4计划任务实现方法(定时执行某个功能)的更多相关文章
- ASP.NET MVC计划任务实现方法(定时执行某个功能)
系统中定时执行某个任务是比较常用的功能,如一个部门定期向上级部门上报数据是一个典型的例子,下面就简单说说在.net mvc中如何实现定时执行某个功能的方法. 1.首先修改Glocal.asax文件,在 ...
- [转]oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务。
oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务. 一.查询系统中的job,可以查询视图 --相关视图 select * from dba_jobs; selec ...
- oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务。
来源于:http://www.cnblogs.com/wangfg/p/5110831.html 一.查询系统中的job,可以查询视图 --相关视图 select * from dba_jobs; s ...
- php ignore_user_abort()实现计划(定时执行)任务功能
? 1 2 3 4 5 6 7 8 9 10 11 12 <?php ignore_user_abort(TRUE); //关掉浏览器,PHP脚本也可以继续执行. set_ti ...
- asp.net mvc4 使用KindEditor文本编辑器
最近做项目要用文本编辑器,编辑器好多种,这里介绍KindEditor在asp.net mvc4中的使用方法. 一.准备工作: 1.下载KindEditor.去官网:http://www.kindsof ...
- 从零开始实现asp.net MVC4框架网站的用户登录以及权限验证模块 详细教程
从零开始实现asp.net MVC4框架网站的用户登录以及权限验证模块 详细教程 用户登录与权限验证是网站不可缺少的一部分功能,asp.net MVC4框架内置了用于实现该功能的类库,只需要简单搭 ...
- oracle job有定时执行功能
oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务. oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务. 一.查询系统中的 ...
- MVC 定时执行任务
环境:.net4.5 需求:需要一个方法定时执行任务 解决: System.Threading.Timer 提供以指定的时间间隔执行方法的机制. 此类不能被继承,有10多种实例化方法,满足多种情况. ...
- scrapy定时执行抓取任务
在ubuntu环境下,使用scrapy定时执行抓取任务,由于scrapy本身没有提供定时执行的功能,所以采用了crontab的方式进行定时执行: 首先编写要执行的命令脚本cron.sh #! /bin ...
随机推荐
- ubuntu安装cuda、cudnn
环境: Ubuntu 16.04.4 LTS CUDA:8.0 CUDNN:5.1 CUDA下载:https://developer.nvidia.com/cuda-80-ga2-download-a ...
- 使用JAX-WS(JWS)发布WebService(一)
JAX-WS概述: 通过Main发布一个简单WebService: JAX-WS(Java API for XML Web Services)规范是一组XML web services的JAVA AP ...
- 结合《需求征集系统》谈MVC框架
结合<需求征集系统>分析MVC框架. 六个质量属性: 可用性:在系统压力过大时,会提示系统繁忙. 可修改性:使用配置文件,修改配置文件即可.对于一些公共的方法,进行封装,修改时,只需修改封 ...
- 成都Uber优步司机奖励政策(2月26日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 苏州Uber优步司机奖励政策(1月11日~1月17日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 【BZOJ1176】[BOI2007]Mokia 摩基亚
[BZOJ1176][BOI2007]Mokia 摩基亚 题面 bzoj 洛谷 题解 显然的\(CDQ\)\(/\)树套树题 然而根本不想写树套树,那就用\(CDQ\)吧... 考虑到点\((x1,y ...
- java nio之Buffer
一.JAVA NIO 是在和channel交互的时候使用的.Channel将数据读入缓冲区,然后我们又从缓冲区访问数据.写数据时,首先将要发送的数据按顺序填入缓冲区.基本上,缓冲区只是一个列表,它的所 ...
- 最新flowable研究学习及其汉化flowable6.3中文
flowable 是activiti的分支,现在感觉比activiti要强大一些,官网是 https://flowable.org/ 下载最新的6.31版本. 放到tomcat下面,汉化需要对flow ...
- 「日常训练」 Longest Run on a Snowboard (UVA-10285)
题意 其实就是一条二维的LIS,但是还是做的一愣一愣的,多努力. 考虑$dp[i][j]$为从(i,j)出发的二维LIS的最大值,那么$dp[i][j]=max\{dp[i−di[k]][j−dj[k ...
- Kotlin的密封(Sealed)类:超强的枚举(KAD 28)
作者:Antonio Leiva 时间:Jun 27, 2017 原文链接:https://antonioleiva.com/sealed-classes-kotlin/ Kotlin的封装类是Jav ...