![]() |
Web Development »
ASP.NET »
General
Intermediate
License: The Code Project Open License (CPOL)
Schedule your web tasks with WebTaskSchedulerBy SalarSoftThis tool provides easy web task scheduling, designed for ASP.NET and using Caching technique. |
C# (C# 2.0), VB 8.0, Windows, .NET (.NET 2.0, Mono), ASP.NET
|
||||||||
|
Advanced Search |
|
|
|
||||||||||||||||
Read WebTaskScheduler user guide in ASP.NET in my site
Please follow these steps:
C#
static void MyTask_CallBack(WebTaskEventArgs e)
{
// Enter your codes here
}
VB.NET
Shared Sub MyTask_Callback(ByVal e As WebTaskEventArgs)
' Enter your codes here
End Sub
This callback method has an argument of WebTaskEventArgs type. This method will be called when the task is executed.
C#
WebTaskScheduler.Add("MyTask", MyTask_CallBack, TaskExecutePeriod.Weekly);
In VB.NET the codes are a bit longer. Here is a VB.NET example:
VB.NET
Sub AddMyTask()
'Line 1
Dim onMytaskCallBack As WebTaskExecuteCallback
'Line 2
onMytaskCallBack = New WebTaskExecuteCallback(AddressOf MyTask_CallBack)
'Line 3
WebTaskScheduler.Add("MyTask", onMytaskCallBack, TaskExecutePeriod.Weekly)
End Sub
On the first line we defined a variable of WebTaskExecuteCallback type. On the second line we created a new instance of WebTaskExecuteCallback type to the variable, and on the third line we added the task to the class.
Add method is used to add a new task. Here are three ways it is defined:
Method 1:
WebTaskScheduler.Add( String , WebTaskExecuteCallback , Integer )
Method 2:
WebTaskScheduler.Add( String , WebTaskExecuteCallback , TaskExecutePeriod )
Method 3:
WebTaskScheduler.Add( String , WebTaskExecuteCallback , TimeSpan )
The two first arguments of these overloads have same behavior.
The first argument "key" which its type is string: Specifies the name of the task. This name should be unique. This key may be used for future operations.
The second argument "callback" which its type is WebTaskExecuteCallback: Specifies the callback method. This method will run if the task is executed. The method with WebTaskExecuteCallback type has a WebTaskEventArgs type of argument which has been described at the bottom of the page.
The third argument of Method 1, "DaysPeriod", which its type is integer: Specifies intervals between the execution of the tasks. If it is set to 10, the task will run after 10 days.
The third argument of Method 2, "period", which its type is TaskExecutePeriod: Specifies the type of the task execution intervals. The value can be one of None , EveryNoon , Daily , Weekly , TwoWeekly or Monthly. For example if the value sets to Weekly, the task will run every weekends.
The third argument of Method 3, "customPeriod", which its type is TimeSpan: Through this, the task will run after the specified time. For example if the value is set to 45 minutes, the task will run after 45 minutes of adding the method call.
The Remove method can be used to remove a task. Here is its definition:
Method 1: Remove(string key) Method 2: Remove(WebTaskItem)
The first method accepts the key of the task. The second method accepts the task item which its type is "WebTaskItem".
The GetItem method returns the existing task item.
GetItem( string )
Returns WebTaskItem
This method has an argument that is the key of the task which is defined in Add method. This method will return WebTaskItem.
There are two methods to lock and unlock the access to WebTaskScheduler instance.
This is an advanced option to prevent threads from multiple access to
methods. With these methods only one thread can have access to the
class and the other threads will wait for the current thread to finish.
Here are theirs the definition:
Method 1: Lock() Method 2: Lock( wait ) Method 3: Unlock()
Call Lock method to lock the access, and call Unlock method to unlock the access.
The second method has an argument that specifies Wait option to check
if there is another thread that uses the instance; if the value is set
to false and there is another thread working with the class, the method
will throw an exception.
Important: Please use try..finally block when you're going to use these methods.
Here is an example:
C#:
WebTaskScheduler.Lock();
try
{
WebTaskScheduler.Add("MyTask", MyTask_CallBack, 1);
}
finally
{
WebTaskScheduler.Unlock();
}
VB.NET:
WebTaskScheduler.Lock()
Try
Dim onMytaskCallBack As WebTaskExecuteCallback
onMytaskCallBack = New WebTaskExecuteCallback(AddressOf MyTask_CallBack)
WebTaskScheduler.Add("MyTask", onMytaskCallBack, TaskExecutePeriod.Weekly)
Finally
WebTaskScheduler.Unlock()
End Try
| Name | Decription |
|---|---|
| None | Executes the task immediately (not recommended) |
| EveryNoon | Executes the task every noon |
| Daily | Executes the task every night |
| Weekly | Executes the task every weekend at night |
| TwoWeekly | Executes the task every two weeks at night |
| Monthly | Executes the task every month at night |
| ShamsiWeekly | Executes the task every week at night using Persian dates |
| ShamsiTwoWeekly | Executes the task every two weeks at night using Persian dates |
| ShamsiMonthly | Executes the task every month at night using Persian dates |
| You must Sign In to use this message board. | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
General
News
Question
Answer
Joke
Rant
Admin
|
PermaLink |
Privacy |
Terms of Use
Last Updated: 23 Mar 2008 Editor: |
Copyright 2008 by SalarSoft Everything else Copyright © CodeProject, 1999-2009 Web11 | Advertise on the Code Project |