用Timer解决问题的思路很简单,首先设定Timer类的Interval属性(单位是毫秒),也就是时间间隔;然后在Timer的Elapsed的事件里写执行代码,每过一个设置好的Interval时间间隔,将执行一次Elapsed中的事件 (这和VB程序中的Timer控件基本没有区别)。
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了泸水免费建站欢迎大家使用!
那知道了用什么类,这些代码要写在哪里呢?把代码写在Global.asax件中,在VS的项目上右键,点添加--》新建项,选“全局应用程序类”,项目中就会有Global.asax文件了。
为了表达清楚直接上代码(首先在Global.asax文件头部引入system.Timers命名控件):
span style="font-size:18px;" public class Global : System.Web.HttpApplication
{
//在网站运行时这段代码同时启动
protected void Application_Start(object sender, EventArgs e)
{
System.Timers.Timer objTimer = new System.Timers.Timer();
objTimer.Interval = 60*1000; //这个时间单位:毫秒
objTimer.Enabled = true; //设置Timer类的可用性
//将Timer的Elapsed事件绑定到新建立的timer对象上
objTimer.Elapsed += new ElapsedEventHandler(objTimer_Elapsed);
}/span
下面是在Timer的Elapsed事件中的代码
span style="font-size:18px;"void objTimer_Elapsed(object sender, ElapsedEventArgs e)
{
string Time = DateTime.Now.ToShortTimeString();//获得当前时间
//从配置文件里获得当前设置的时间。
string OrderTime = ConfigurationManager.AppSettings["OrderFoodTime"];
/*测试数据*/
if(Time.Equals(OrderTime))
{
//如果时间相等,执行你要执行的操作,这里可以调用你程序中的其他类的方法
}
}/span
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Timer1.Interval = 2000(两秒)
Me.Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
MsgBox("Hello World")
End Sub
在界面拖一个Button和Timer试试这个效果,在界面双击Timer控件,代码应该很明白了
Timer1.Interval = 500
Private Sub Timer1_Timer()
Timer1.Enabled = False
Dim ss As String
ss = Format(Now, "HH:mm:ss")
If ss = "12:00:00" Then
'执行备份语句
End If
Timer1.Enabled = True
End Sub
还有一个办法就是可以用SQL自身的功能,在SQL里面可以添加任务 ,设置周期为每天,时间为12点,到时候执行一下备份