Scheduled tasks

Scheduled tasks in Sitefinity CMS are objects that can execute a predefined set of operation at a particular point in time. You can use scheduled task in conjunction with other Sitefinity mechanism such as the event system to postpone the execution of heavy operations. For example, you can subscribe for the ICommentCreatedEvent for comments, to receive an email each time a new comment is created. Instead of executing the fired event handler logic immediately you can create a scheduled task that is going to perform this operation at a more convenient time, for example during the weekend.

Create a scheduled task

The following procedure demonstrated how to create a scheduled task:

  1. Create a new class that derives from ScheduledTask.
  2. In the constructor, set a key identifier.
    It is used to check if a task is already scheduled or to find the task itself.
  3. In the ExecuteTask method, you specify the operations that are going to be executed by the scheduled task.
  4. Optionally, you can add your own logic and create a recurring task. To do this, you:
    1. Create a class for the task logic.
    2. Inside the ExecuteTask method, create a new task.
    3. Reschedule it using the RescheduleNextRun method.

      NOTE: In this example, the task recurring time is 60 seconds. You can set the execution time in other units of measures, apart from seconds. For more information, see the official Microsoft documentation on System.DateTime methods

The static ScheduleTask method wraps the logic, required to schedule a new task, as well as to reschedule an existing one. 

EXAMPLE: To create a scheduled task, you can use the following code sample:

Execute a scheduled task 

Then you can execute the scheduled task using the following line in your Sitefinity CMS widgets or event handlers:

Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.

Get started with Integration Hub | Sitefinity Cloud | Sitefinity SaaS

This free lesson teaches administrators, marketers, and other business professionals how to use the Integration hub service to create automated workflows between Sitefinity and other business systems.

Web Security for Sitefinity Administrators

This free lesson teaches administrators the basics about protecting yor Sitefinity instance and its sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.

Foundations of Sitefinity ASP.NET Core Development

The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.

Was this article helpful?

Next article

Scheduling API