quartz.net相关内容
在我的项目中,我必须使用Quartz,但我不知道我做错了什么。 JobFactory: 公共类IoCJobFactory:IJobFactory { 私有只读IServiceProvider _factory; public IoCJobFactory(IServiceProvider factory) { _factory = factory; } 公开IJob
..
我有一项服务,每隔X分钟就会运行一次。如果出于某种不可预见的原因该工作花费了X分钟以上的时间,我想确保触发器不会启动该工作的第二次实例。 示例场景 我有工作X ,会拾取文件,并由Quartz每1分钟触发一次。 作业X通常可以在1分钟内处理100个文件,超过100个文件的任何处理都将花费超过1分钟的时间。 自上次运行以来,恰好有150个文件,因此Job X启动并开始处理。到1分钟时,
..
我有一份工作,需要在另一个对象上启动一些方法。我希望能够将其传递给其构造函数中的工作。 环顾四周,看来实现此目标的唯一方法是使用IoC构架。尽管此方法将来会成为我的解决方案,但现在我需要一种通用的解决方案,不需要任何IoC。 我知道 JobDataMap ,但最佳做法文档建议不要这样做由于序列化。该对象是多线程且有状态的,因此序列化无论如何都是代码自杀。 如何创建类似于以下内容的
..
如何在 .net 内核中配置Quartz以使用依赖项注入?我使用标准的.net核心依赖机制。在实现 IJob 的类的构造函数中,我需要注入一些依赖项。 解决方案 Quartz.Spi.IJobFactory 接口并实现它。 Quartz文档指出: 触发触发器时,将通过在Scheduler上配置的JobFactory实例化与之关联的Job。默认的JobFactory仅激活作业类的新实例
..
这是我的nlog配置.我想要实现的是将Quartz日志保存在单独的文件中.但是检查日志文件夹,我只找到调度程序日志文件.
..
我正在使用.NET MVC4.所有服务都是使用Ninject注入的.我正在尝试使用Quartz安排工作.现在,作业在Global.asax中注册如下: Global.asax: protected void Application_Start() { // ... configuration stuff ScheduledJobs.RegisterJobs(); }
..
在Quartz.Net作业实现的执行过程中,通过Ninject依赖关系解析器实例化的DbContext实现的最佳范围是什么?如果我使用了线程作用域,并且使用Quartz线程池中的同一线程多次执行作业,是否可以提供DbContext的同一实例? 我想要一个作用域,这意味着每次作业被解雇时,我都会获得一个(只有一个)DbContext新实例. 解决方案 是的,我建议您不要使用InThre
..
我在应用程序中使用ninject和quartz.net,我想用ninject注入作业,但是我不知道该怎么做,因为我所知道的是jobdetail是由Jobimpl类而不是实例创建的,例如: JobBuilder.Create() 有人知道吗? 解决方案 您将必须实现Quartz.Spi.IJobFactory-使用IResolutionRoot创建作业(有关实现,
..
我正在使用石英和休眠型,遇到了问题.通常,我会在Web请求完成时关闭所有nhibernate会话,但是我有一个从应用程序启动开始的调度程序,因此我需要传递一个我认为永远不应关闭的nhibernate会话. 我不确定该怎么做. 注入 public class NhibernateSessionFactoryProvider : Provider
..
我已经开发了一个C#网络应用MVC,该API通过API调用从另一个站点(Trello)获取一些信息,并允许用户执行一些操作,例如打印带有所有卡详细信息的.xls文件.现在,我想实现一项功能,该功能每天在后台的特定时间每天发送一封邮件到带有该Excel附件的我的Gmail帐户.我想在一个外部项目中实现该功能,但是要在相同的解决方案中实现,但是我不知道该怎么做,我听说了quartz.net,但是我不知
..
如何在Quartz.NET调度程序中配置日志记录到文本文件?我应该只使用Common.Logging.dll还是要使用log4net? 解决方案 您可以按照
..
我会毫不客气地声明我对Log4Net的经验很少.我只是安装了它,但是它不会捕获来自调度数据库Quartz.net的日志事件.显然Quartz.net使用Commons Logging,并且需要对其进行配置以指向我的Log4Net设置.不幸的是,它似乎不起作用.感谢您的帮助: ...
..
我公司的标准日志记录工具是NLog.我正在尝试介绍Quartz.net,并被问到它是否可以使用NLog代替Log4Net. 我知道我可以重新编译以使用NLog,但如果可能的话,我想从配置文件中完成此操作. 解决方案 假定您使用的是Quartz.net 1.0.3.您必须添加对以下程序集的引用: 常用日志记录 Common.Logging.NLog NLog 然后,您必
..
我们正在.NET Core 2中启动一个新项目,我将需要某种方法来运行计划的工作来完成一些工作.该应用程序将托管在Linux服务器或AWS linux实例中.我已经使用Azure WebJobs和.NET 4.6做到了这一点. .Net Core和Linux如何做到这一点 解决方案 我不知道是谁提出了这个问题.我出去玩了Hangfire Jobs.相当容易工作.实际上不是预定的工作.但是我
..
嗨, 我在查看quartz.net时很困惑 我想制作一个调度程序,用于向我的asp.net应用程序的用户发送邮件。我有共享主机。 它会在共享主机上运行还是我必须为它服务一个新服务器。 谢谢 解决方案 这是给您的托管服务提供商的一个问题。 通过共享托管,所有股东都在同一个托管计划中同一系统可以访问同一组软件产品。其中一些产品可以是可选的,仅安装在您的域或仅安装在您的
..
嗨 我在调度程序上运行了2个作业。我想暂停特定的工作一段时间,然后再恢复。 怎么做? 解决方案 你可以参考这个 暂停和恢复石英工作 - 以编程方式 [
..
我使用Quartz运行我的作业,每隔50秒使用一个cron表达式: Cron_Expression =“0/50 * * * *?“ 我的工作在几秒钟内运行: 50,60,50,60 ,... 而不是每50秒!并且不会在第二个“0”运行。 从0开始,每50秒正确的cron表达式是什么? 解决方案 '/'语法指定期间的增量而不是重复间隔。不可否认,这是一个
..
我正在为我的项目执行quartz.net调度程序,并对这个库的运行有一些疑问: 一个工作引发一个例外,没有catch块(未处理的异常)?这会导致进程终止和AppDomain卸载吗?其他工作是否会受到损害? Quartz.net lib是否尝试重新启动引发未处理异常的作业?或者我应该在我的项目中手动执行? 谢谢。 解决方案 从我可以确定是Quartz.net用户自己。 如
..
目前,我正在使用Quartz.NET编写一个服务来安排运行它。 我想知道有没有人有任何使用Quartz的构造器注入的经验。 NET和简单的注射器。 下面基本上是我想要实现的。 public class JobImplementation:IJob { private readonly IInjectedClass injectClass; public JobIm
..
我运行Quartz.NET作为服务,我直接在 quartz-jobs.xml 文件中添加我的作业。所以为了添加和删除作业和触发器,我处理 Xml ,而不是正常的功能。 我想知道如何通过查看其cron表达式来获得触发器的下一个触发时间。 解决方案 您可以从给定的cron表达式获取下一个触发时间: var expression = new CronExpression(“0 26 1
..