0

此链接建议创建一个抽象基类,该基类可以读取 Quartz.net 的作业数据映射信息,并且每个作业都将从该基类派生。

http://quartznet.sourceforge.net/faq.html#howtochainjobs

有人可以为我提供这个基类的示例,因为我不确定如何在基类中检索作业详细信息,然后在派生类上调用 Execute 方法?

普拉提克

4

1 回答 1

0

创建一个抽象基类只是 Quartz.NET 文档中的一个建议,并不是实现作业链的要求。基本上,他们建议如果你想链接工作:“AJob”->“BJob”->“CJob”,你会按照以下方式做一些事情:

  1. 创建抽象类“ChainBaseJob”。

  2. 让你的工作类(AJob 和 BJob 都是其中的类型)继承自 ChainBaseJob。

  3. ChainBaseJob 将包含某种方法,例如:

        string GetNextJobInChain()
    

...这将返回作业的名称(即 Quartz 作业名称)。有多种方法可以使用它,但我猜文档建议您的 TriggerListener 检查(在作业完成方法期间)是否已完成的作业(比如说“AJob”)继承自 ChainBaseJob。如果是,则将其强制转换并调用GetNextJobInChain,并使用方法返回的名称调用调度程序在AJob完成时执行它。如果一切都正确实现,TriggerListener 将知道在 AJob 完成后执行 BJob。

祝你好运。

于 2010-08-17T23:37:41.703 回答