HTTP 400 – 请求无效 HTTP 401.1 – 未授权:登录失败 HTTP 401.2 – 未授权:服务器配置问题导致登录失败 HTTP 401.3 – ACL 禁止访问资源 HTTP 401.4 – 未授权:授权被筛选器拒绝 HTTP 401.5 – 未授权:ISAPI 或 CGI 授权失败 HTTP 403 – 禁止访问 HTTP 403 – 对 Internet 服务管理器 的访问仅限于 Localhost HTTP 403.1 禁止访问:禁止可执行访问 HTTP 403.2 – 禁止访问:禁止读访问 HTTP 403.3 – 禁止访问:禁止写访问 HTTP 403.4 – 禁止访问:要求 SSL HTTP 403.5 – 禁止访问:要求 SSL 128 HTTP 403.6 – 禁止访问:IP 地址被拒绝 HTTP 403.7 – 禁止访问:要求客户证书 HTTP 403.8 – 禁止访问:禁止站点访问 HTTP 403.9 – 禁止访问:连接的用户过多 HTTP 403.10 – 禁止访问:配置无效 HTTP 403.11 – 禁止访问:密码更改 HTTP […]
View Details工作之余。技术?。记是不可能记住的。 只有写点东西 才能维持得了生活这样子的。好早就像写一篇关于任务调度的文章。终究是太懒了 一、Quartz.NET介绍 Quartz.NET是一个强大、开源、轻量的作业调度框架,是 OpenSymphony 的 Quartz API 的.NET移植,用C#改写,可用于winform和asp.net应用中。它灵活而不复杂。你能够用它来为执行一个作业而创建简单的或复杂的作业调度。它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。 官网:http://www.quartz-scheduler.net/ 源码:https://github.com/quartznet/quartznet 二、Quartz.NET用途 一,可以定时发邮件通知。 二 , 电商网站的定时打折活动。(比如规定11月11日 淘宝购买女朋友打八折) 三, 定时对数据更新 或者添加。 四,自己朋友生日。 可以定时发生日祝福。 等等 (我也不一一举例了) 三、Quartz.NET安装 我使用的VS版本是2015的 选择工具 – NuGet包管理 – 管理解决方案的NuGet包 输入 Quartz.NET 安装 还可以通过NuGet控制台 通过安装命令
1 |
Install-Package Quartz |
1 |
四、Quartz.NET实现思路 一,继承并实现IJob接口,在Execute 方法中写你要做的事情(切记 ) 二,使用Quartz 中的API 定义好 工作 触发器 以及工厂 三,加入可视化(远程管理) 四,建立配置的通讯。 五,在全局类(Global.asax)Application_Start注册并开启定时任务 五、上代码 其中JobWork 是我的定义的工作文件 里面有你要执行的工作已经对应的触发器(一个工作对应一个触发器) 首先 我写了一个向文本文件中插入文字的方法已经触发器 (注意 必须继承IJob 要做的事情写在 Execute 中)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
public class AddMassagejob : IJob { public void Execute(IJobExecutionContext context) { var reportDirectory = string.Format("~/text/{0}/", DateTime.Now.ToString("yyyy-MM-ssss")); reportDirectory = System.Web.Hosting.HostingEnvironment.MapPath(reportDirectory); if (!Directory.Exists(reportDirectory)) { Directory.CreateDirectory(reportDirectory); } var dailyReportFullPath = string.Format("{0}text_{1}.log", reportDirectory, DateTime.Now.Day); var logContent = string.Format("{0}-{1}-{2}", DateTime.Now, "滴 滴滴", Environment.NewLine); if (logContent == null) { JobExecutionException jobex = new JobExecutionException("写入失败"); } File.AppendAllText(dailyReportFullPath, logContent); } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public class AddMasagerTriggerServer { public ITrigger AddMasagerTrigger() { var trigger = TriggerBuilder.Create() .WithIdentity("添加消息到日志", "作业触发器") .WithSimpleSchedule(x => x //.WithIntervalInSeconds(5) // .WithIntervalInHours(5) .WithIntervalInMinutes(5) //每五分钟执行一次 .RepeatForever()) .Build(); return trigger; } } |
我这里设置的是5分钟执行一次。 你也可以让他5秒 5小时执行一次。 关于时间配置 官方一些常用的实例 0 0 12 * * ? 每天12点触发 0 15 10 ? * * 每天10点15分触发 0 15 […]
View Details