大家早,
使用 C# .NET 4.0 和 Visual Studio 2012 Express。
我有一个程序运行一些 SQL 存储过程,然后打开并访问数据库并自动生成报告,然后通过电子邮件发送它们。
我把它设置在一个日期,所以它会在午夜到来时运行。
下面是一个代码示例。
private void button1_Click(object sender, EventArgs e)
{
Thread myUltiThread = new Thread(GetCurrentDate);
myUltiThread.Start();
}
private void GetCurrentDate()
{
string myDate = "";
myDate = DateTime.Today.Day.ToString();
if(myDate == "7" && myDateToggle == false)
{
Task t = new Task(() => RunMonthBackUp());
t.Start();
}
if (myDate == "8" && myDateToggle == true)
{
myDateToggle = false;
}
}
因此,您可以看到,一旦按下按钮,我的程序就会启动线程,该线程使用 getdate 方法,该方法检查日期是否正确。
如果是,那么它会启动一个运行整个过程的任务。
我的问题是这没有发生,我相信这是因为该方法只运行一次。我有一种感觉,这是由于我对使用线程缺乏了解(通常只处理任务)。
有人可以向我指出我哪里出错以及如何正确设置吗?
非常感谢各位