Kentico 11计划任务将不会在自定义类中运行



我在Kentico 11的一个实例上的"Site1"下构建了两个自定义计划任务。"Site1"下有几个计划任务正在运行。大多数运行代码来自Kentico的CMS库,如CMS.Membership.DeleteOnActivatedUser.

我的2个自定义计划任务位于App_Code文件夹中。

using CMS;
using CMS.EventLog;
using CMS.Scheduler;
using System;
[assembly: CMS.AssemblyDiscoverable]
[assembly: RegisterCustomClass("CustomTask1", typeof(namespaceName.CustomTask1))]
[assembly: RegisterCustomClass("CustomTask2", typeof(namespaceName.CustomTask2))]
namespace namespaceName
{
public class CustomTask1 : ITask
{
public string Execute(TaskInfo task)
{
try
{
EventLogProvider.LogEvent(EventType.INFORMATION, "CustomTask1", "Task Begin", "Task is working.");
}
catch (Exception ex)
{
EventLogProvider.LogEvent(EventType.ERROR, "CustomTask1", "Task Error", "Task threw exception: " + ex.Message);
}
return null;
}
}
public class CustomTask2 : ITask
{
public string Execute(TaskInfo task)
{
try
{
EventLogProvider.LogEvent(EventType.INFORMATION, "CustomTask2", "Task Begin", "Task is working.");
}
catch (Exception ex)
{
EventLogProvider.LogEvent(EventType.ERROR, "CustomTask2", "Task Error", "Task threw exception: " + ex.Message);
}
return null;
}
}
}

我的CustomTask1和CustomTask2显示在Kentico任务调度器的Class下拉列表中。我已将这两项任务设置为每天早上6点运行。并且已选中"已启用"复选框。以下复选框均未选中。当我点击任务列表页面上的绿色三角形时,我会收到一条弹出消息,说它正在运行。但是事件日志中没有记录任何内容,并且上次运行日期时间和运行计数器都没有更改。

有人知道是什么原因造成的吗?我在Kentico的另一个实例中运行了多个自定义计划任务,它们运行良好,但我无法让这个实例运行我的自定义任务。

有什么想法吗?

在版本11:中不应该需要这个

[assembly: CMS.AssemblyDiscoverable]

如果你在站点重新启动后查看事件日志,你能看到系统重新启动时加载模块的AppStart事件吗?如果没有,您的应用程序可能没有注册该自定义代码。在这一点上,在本地构建代码并查看是否存在任何错误可能是值得的。

最新更新