十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
用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
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点,到时候执行一下备份
控制台调用Timer和窗体是类似的。首先在项目引用里面加入System.Windows.Forms程序集,然后在代码顶部引入命名空间:
Imports System.Windows.Forms
在控制台的Module中声明一个计时器:
Private WithEvents Timer1 As New Timer()
把计时器的Tick事件静态绑定到处理函数中:
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
'一些代码
End Sub
在需要开始计时的地方,修改其Interval、Enabled属性:
Timer1.Interval = 1000
Timer1.Enabled = True
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控件,代码应该很明白了