I want my windows service to keep checking SQL server table every 30 secs with one timer and get another interval timer value from this table to do another job. How can I achieve this?
protected override void OnStart(string[] args) { try { timer1.Elapsed += new ElapsedEventHandler(timer1_Elapsed); timer1.Interval = 30000; timer1.Enabled = true; timer1.Start(); } catch (Exception ex) { ErrorLogging(ex); } } protected override void OnStop() { timer1.Enabled = false; } private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { try { con = new SqlConnection("server=servername; database=databasename;uid=username; password=password"); con.Open(); cmd = new SqlCommand("Select TOP(1) [IntervalTime] from [dbo].[Intervals] ORDER BY [IntervalTime] DESC", con); int interval = cmd.ExecuteNonQuery(); timer2.Elapsed += new ElapsedEventHandler(timer2_Elapsed); timer2.Interval = interval; timer2.Enabled = true; timer2.Start(); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); } finally { cmd.Dispose(); con.Dispose(); } } private void timer2_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { // Do other job }
Can anyone please change this code to make it working.
int interval = cmd.ExecuteNonQuery();
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)