Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net中的计时器,每2分钟执行两次代码_Asp.net_Vb.net_Timer - Fatal编程技术网

asp.net中的计时器,每2分钟执行两次代码

asp.net中的计时器,每2分钟执行两次代码,asp.net,vb.net,timer,Asp.net,Vb.net,Timer,我有一个按钮,当它被点击时,它将启动一个存储过程来执行sql作业。在按钮中我有一个方法。在该方法中,我希望代码等待2分钟并运行sql查询以获取状态,如果状态=4或状态=7,则停止,但如果状态不是4或7,则相同的代码将在两分钟内再次运行,但只运行两次。如何在vb.net网站中实现此功能?下面是我到目前为止所做的尝试,但我有一些错误,我以前从未做过 Dim myTimer As New System.Timers.Timer(2 * 60 * 1000) Private Sub Disa

我有一个按钮,当它被点击时,它将启动一个存储过程来执行sql作业。在按钮中我有一个方法。在该方法中,我希望代码等待2分钟并运行sql查询以获取状态,如果状态=4或状态=7,则停止,但如果状态不是4或7,则相同的代码将在两分钟内再次运行,但只运行两次。如何在vb.net网站中实现此功能?下面是我到目前为止所做的尝试,但我有一些错误,我以前从未做过

   Dim myTimer As New System.Timers.Timer(2 * 60 * 1000)
   Private Sub DisableButton()
      btnBertFish.Enabled = False
      myTimer.Elapsed = New ElapsedEventHandler(AddressOf (OnTimedEvent()))
   End Sub
   Private Sub OnTimedEvent()
   'Some code that need to execute
   End Sub
到目前为止,我得到的错误是:公共事件已过去(发送者作为对象,e作为System.Timers.ElapseDevenTargets)是一个事件,不能直接调用。使用“RaiseEvent”语句引发事件

我看过教程和System.Timers,但我甚至不知道如何开始。有人能帮我吗?或者给我指出正确的方向

 Dim myTimer As New System.Timers.Timer()
 myTimer .AutoReset = True
 myTimer .Interval = 60 * 1000 '1 minute
 AddHandler myTimer.Elapsed, AddressOf OnTimedEvent
 dim i as integer=0
 Private Sub DisableButton()
    btnBertFish.Enabled = False
    myTimer.Elapsed = New ElapsedEventHandler(AddressOf (OnTimedEvent()))
 End Sub   
 Private Sub OnTimedEvent()
 i += 1
 if i= 2 then
 ' Run your code
 'i=2 means the second tick of the timer since i value is increased in each 1 minute
 End IF
 End Sub
添加
myTimer.Start()
在需要延迟的情况下,停止计时器或重置使用计时器块添加代码,但我不清楚状态是什么:

 if theStatus = 4 or theStatus = 7 then
 myTimer.Stop()
 else
 i=0
 End If

1) 事件语法错误;请参阅文档。2) 你根本不能那样做;这在服务器上运行。你需要使用Javascript。我怎样才能从Javascript开始一段代码?你是在问如何调用Javascript吗?你的问题毫无意义。Javascript是代码。我知道Javascript是代码。我想问的是如何通过Javascript执行vb.net代码。您可以使用AJAX。然而,这也不是你想要的;您应该使用Javascript来操作DOM。