.Net core使用TimeJob
转自:https://www.cnblogs.com/Ivan-Wu/p/9909742.html
在我以前的文章中有一个.Net core使用Quartz.Net ,一开始我们的设想就是定时操作数据库,所以有很多实现方法,后来发现TimeJob可以同样实现我们的需求,而且更简便。
所以我们就使用了TimeJob,这是TimeJob教程:http://www.1234.sh/post/pomelo-extensions-timed-jobs?tdsourcetag=s_pcqq_aiomsg
其实使用TimeJob非常简单,当然TimeJob不是官方包,所以我们先引入这个包:Pomelo.AspNetCore.TimedJob
引入成功之后呢,我们在startup类中的ConfigureServices方法中添加:
services.AddTimedJob();
然后在configure方法中添加:
app.UseTimedJob();
添加完之后,建立TimeJob类,记得继承Job类:
using Pomelo.AspNetCore.TimedJob;
namespace Demo.Unit
{
public class TestJob:Job
{
[Invoke(Begin = "2018-11-2 11:30", Interval = 20)]
public void Test(IServiceProvider service)
{
string path = @"C:\Users\win 10\Desktop\1.txt";
string value = DateTime.Now.ToString();
if (File.Exists(path))
{
File.Delete(path);
}
StreamWriter streamWriter = new StreamWriter(path, true);
streamWriter.WriteLine(value);
streamWriter.Flush();
streamWriter.Close();
GC.Collect();
}
}
}
这里要注意的是要引入
Pomelo.AspNetCore.TimedJob;
然后这里的test方法就是定时执行的方法,begin就是开始时间,然后后面的参数就是多少秒执行一次,也就是间隔时间。
要注意最后要GC.Collect(); 非常简单就可以实现定时任务了。

浙公网安备 33010602011771号