当前位置: 首页 > news >正文

网站的设计需要什么了解c2c电商网站的特点

网站的设计需要什么,了解c2c电商网站的特点,在线制作图片加字合成,app平台开发目录 创建简易控制台定时任务步骤完整程序 创建简易控制台定时任务 创建winform的可以看#xff1a;https://blog.csdn.net/wayhb/article/details/134279205 步骤 创建控制台程序 使用vs2019新建项目#xff0c;控制台程序#xff0c;使用.net4.7.2项目右键#xff08… 目录 创建简易控制台定时任务步骤完整程序 创建简易控制台定时任务 创建winform的可以看https://blog.csdn.net/wayhb/article/details/134279205 步骤 创建控制台程序 使用vs2019新建项目控制台程序使用.net4.7.2项目右键管理NuGet程序包搜索Quartz安装 使用Quartz.Net官网示例运行程序 打开官网https://www.quartz-scheduler.net/documentation/quartz-3.x/quick-start.html#trying-out-the-application在程序入库Program.cs粘贴官网示例 //出现错误右键修复自动添加包 using Quartz; using Quartz.Impl; using Quartz.Logging; using System; using System.Threading.Tasks;namespace ConsoleSkWork {class Program{private static async Task Main(string[] args){LogProvider.SetCurrentLogProvider(new ConsoleLogProvider());// Grab the Scheduler instance from the FactoryStdSchedulerFactory factory new StdSchedulerFactory();IScheduler scheduler await factory.GetScheduler();// and start it offawait scheduler.Start();// define the job and tie it to our HelloJob classIJobDetail job JobBuilder.CreateHelloJob().WithIdentity(job1, group1).Build();// Trigger the job to run now, and then repeat every 10 secondsITrigger trigger TriggerBuilder.Create().WithIdentity(trigger1, group1).StartNow().WithSimpleSchedule(x x.WithIntervalInSeconds(10).RepeatForever()).Build();// Tell Quartz to schedule the job using our triggerawait scheduler.ScheduleJob(job, trigger);// some sleep to show whats happeningawait Task.Delay(TimeSpan.FromSeconds(60));// and last shut down the scheduler when you are ready to close your programawait scheduler.Shutdown();Console.WriteLine(Press any key to close the application);Console.ReadKey();}// simple log provider to get something to the console//https://www.quartz-scheduler.net/documentation/quartz-3.x/quick-start.html#trying-out-the-applicationprivate class ConsoleLogProvider : ILogProvider{public Logger GetLogger(string name){return (level, func, exception, parameters) {if (level LogLevel.Info func ! null){Console.WriteLine([ DateTime.Now.ToLongTimeString() ] [ level ] func(), parameters);}return true;};}public IDisposable OpenNestedContext(string message){throw new NotImplementedException();}public IDisposable OpenMappedContext(string key, object value, bool destructure false){throw new NotImplementedException();}}}public class HelloJob : IJob{public async Task Execute(IJobExecutionContext context){await Console.Out.WriteLineAsync(Greetings from HelloJob!);}} }运行控制台程序 说明 info是日志插件输出的 hellojob就是任务触发的 添加触发监听器 触发监听器是用于监听触发器的添加触发监听器可以在任务执行前后执行其他动作例如输出下一次该任务执行时间触发监听器官网解释https://www.quartz-scheduler.net/documentation/quartz-3.x/tutorial/trigger-and-job-listeners.html继承触发监听器接口有4个方法需要实现 //触发器执行前 public async Task TriggerFired(ITrigger trigger, IJobExecutionContext context, CancellationToken cancellationToken default) {} // 判断作业是否继续true继续false本次不触发 public async Taskbool VetoJobExecution(ITrigger trigger, IJobExecutionContext context, CancellationToken cancellationToken default) {} // 触发完成 public async Task TriggerComplete(ITrigger trigger, IJobExecutionContext context, SchedulerInstruction triggerInstructionCode, CancellationToken cancellationToken default) {} // 触发失败 public async Task TriggerMisfired(ITrigger trigger, CancellationToken cancellationToken default) {} 主程序中添加触发监听器 // 将trigger监听器注册到调度器scheduler.ListenerManager.AddTriggerListener(new CustomTriggerListener());完整程序 Program.cs using System; using System.Threading.Tasks;using Quartz; using Quartz.Impl; using Quartz.Logging;namespace ConsoleApp1 {public class Program{private static async Task Main(string[] args){LogProvider.SetCurrentLogProvider(new ConsoleLogProvider());// Grab the Scheduler instance from the FactoryStdSchedulerFactory factory new StdSchedulerFactory();IScheduler scheduler await factory.GetScheduler();// and start it offawait scheduler.Start();// define the job and tie it to our HelloJob classIJobDetail job JobBuilder.CreateHelloJob().WithIdentity(job1, group1).Build();// Trigger the job to run now, and then repeat every 10 secondsITrigger trigger TriggerBuilder.Create().WithIdentity(trigger1, group1).StartNow().WithSimpleSchedule(x x.WithIntervalInSeconds(10).RepeatForever()).Build();// 将trigger监听器注册到调度器scheduler.ListenerManager.AddTriggerListener(new CustomTriggerListener());// Tell Quartz to schedule the job using our triggerawait scheduler.ScheduleJob(job, trigger);// some sleep to show whats happeningawait Task.Delay(TimeSpan.FromSeconds(60));// and last shut down the scheduler when you are ready to close your programawait scheduler.Shutdown();Console.WriteLine(Press any key to close the application);Console.ReadKey();}// simple log provider to get something to the consoleprivate class ConsoleLogProvider : ILogProvider{public Logger GetLogger(string name){return (level, func, exception, parameters) {if (level LogLevel.Info func ! null){Console.WriteLine([ DateTime.Now.ToLongTimeString() ] [ level ] func(), parameters);}return true;};}public IDisposable OpenNestedContext(string message){throw new NotImplementedException();}public IDisposable OpenMappedContext(string key, object value, bool destructure false){throw new NotImplementedException();}}}public class HelloJob : IJob{public async Task Execute(IJobExecutionContext context){//获取当前时间DateTime currentDateTime DateTime.UtcNow;await Console.Out.WriteLineAsync(当前日期和时间 currentDateTime.AddHours(8));}} }CustomTriggerListener.cs using Quartz; using System; using System.Threading; using System.Threading.Tasks;namespace ConsoleApp1 {//继承监听器接口public class CustomTriggerListener : ITriggerListener{public string Name CustomTriggerListener;//触发器执行前public async Task TriggerFired(ITrigger trigger, IJobExecutionContext context, CancellationToken cancellationToken default){Console.WriteLine(【*********************************************】);Console.WriteLine($【{Name}】---【TriggerFired】-【触发】);await Task.CompletedTask;}// 判断作业是否继续true继续false本次不触发public async Taskbool VetoJobExecution(ITrigger trigger, IJobExecutionContext context, CancellationToken cancellationToken default){Console.WriteLine($【{Name}】---【VetoJobExecution】-【判断作业是否继续】-{true});return await Task.FromResult(cancellationToken.IsCancellationRequested);}// 触发完成public async Task TriggerComplete(ITrigger trigger, IJobExecutionContext context, SchedulerInstruction triggerInstructionCode, CancellationToken cancellationToken default){Console.WriteLine($【{Name}】---【TriggerComplete】-【触发完成】);//获取下次执行日期时间UTC将UTC时间转换成北京时间DateTimeOffset dd (DateTimeOffset)trigger.GetNextFireTimeUtc();Console.WriteLine(【下次执行时间】dd.DateTime.AddHours(8));await Task.CompletedTask;}// 触发失败public async Task TriggerMisfired(ITrigger trigger, CancellationToken cancellationToken default){Console.WriteLine($【{Name}】---【TriggerMisfired】【触发作业】);await Task.CompletedTask;}}}
http://www.sadfv.cn/news/145579/

相关文章:

  • 泸州市住房和城乡建设厅官方网站前端开发兼职
  • 福建省鑫通建设有限公司网站美空wordpress主题
  • 程序员做网站外快仙桃网站设计
  • 网站建设的主要流程步骤谷歌下载
  • 深圳微信网站运营检查色盲效果网站
  • 织梦网站手机版怎么做长沙高新区住房和建设管理局网站
  • 重庆制作网站首页做一年的网站能赚多少钱
  • 扬州市建设局网站 竣工备案怎样写网站设计意义
  • 静态摄影网站模板wordpress4.6.1中文版
  • 潍坊 公司 网站算卦网站开发
  • 一条龙网站建设价格贵阳app开发定制
  • 网站地址栏图标文字wordpress可以干什么
  • 上海市建设工程招标造价网站做网站保定
  • 网站托管做的好的公司wordpress 图集
  • 个人博客网站备案吗wordpress文章保存目录
  • 做网站购买域名之后成都市建设招标网站
  • 网站如何绑定域名免费建设个人手机网站
  • 国外网站html5从上到下连续变动优盖网logo在线设计
  • 辽宁奔之流建设工程有限公司网站com域名类别
  • 网站子目录怎么做反向代理设置微信公众平台登录入口内村完小
  • 网站开发流程怎么写给手机做网站的公司
  • 如何使用wordpress制作网站门户网站建设的企业
  • 网站后台建设教程下载营销成功案例分享及感悟
  • 网站开发需要注册账户吗智联招聘网站多少钱做的
  • 笔记本电脑做网站比较畅快做网站要开发嘛
  • 网站首页模板设计图深圳小程序搭建
  • 邯郸建立网站费用ps制作网站导航图片
  • 小猫济南网站建设公司合肥关键词排名首页
  • 网站制作代码大全上海网站建设价钱
  • 电商网站的建设的主要目的龙岗平湖网站建设公司