【发布时间】:2011-06-14 15:59:20
【问题描述】:
为此,我已经走到了每一个地方,但无法弄清楚我做错了什么。我正在使用Microsoft.Win32.TaskScheduler 库。每次我单步执行代码时,我的任务总是为空。这是代码。
using (SqlConnection myConnection2 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBConnection"].ConnectionString))
{
myConnection2.Open();
SqlCommand cmd2 = new SqlCommand("sp_GetProcessStart", myConnection2);
cmd2.CommandType = CommandType.StoredProcedure;
cmd2.Parameters.AddWithValue("@ID", txtTaskID.Text);
SqlDataReader rdr = cmd2.ExecuteReader();
if (rdr.HasRows)
{
while (rdr.Read())
{
string task = rdr["TaskName"].ToString();
string newName = task.Remove(task.Length - 4, 4);
using (TaskService ts = new TaskService())
{
Task t;
t = ts.FindTask(newName);
if (t != null)
{
t.Run();
}
}
}
}
}
存储过程是SELECT ID FROM TABLE WHERE ID = @ID。该表有我所有的ScheduledTasks,每个都有一个ID。但是,该表将它们存储为“Task.job”,因此我将删除“.job”。无论我做什么,t 总是为空,我可以找出原因。
【问题讨论】:
-
你尝试过进入 FindTask 吗?
-
是的,FindTask 中的名称是正确的。
标签: c# scheduled-tasks