You can add it in Form Load event and put it into a loop. Check below code.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace LocationFinder
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
}
private void MainForm_Load(object sender, EventArgs e)
{
string old_reader_val = "";
while(true)
{
string connetionString = null;
SqlConnection conn;
SqlCommand cmd;
string sql = null;
SqlDataReader reader;
connetionString = "server=(local);database=modelDb;user id=sa;pwd=123456";
sql = "DECLARE @var varchar(1000) = (SELECT TOP 1 Text FROM Alarms WHERE AlarmDefinitionId=139 ORDER BY EventTime DESC) DECLARE @start_position int, @end_position int SELECT @start_position = PATINDEX('% at%', @var) SELECT @end_position = PATINDEX('%kilometers%', @var) DECLARE @VALUE VARCHAR(10) = (Select SUBSTRING(@var, @start_position+5,5)) Select Top 1 @VALUE,RouteTable.Latitude,Routetable.Longitude,Alarms.ApplicationTime FROM Alarms INNER JOIN Routetable ON Routetable.Location BETWEEN FLOOR(@VALUE)-1 AND CEILING(@VALUE)+1 WHERE AlarmDefinitionId=139 ORDER BY EventTime DESC";
conn = new SqlConnection(connetionString);
try
{
conn.Open();
cmd = new SqlCommand(sql, conn);
reader = cmd.ExecuteReader();
while (reader.Read())
{
if(old_reader_val== reader.GetValue(0))
{
}
else
{
}
old_reader_val = reader.GetValue(0);
MessageBox.Show("Leak Location" + " | " + "Latitude" + " | " + "Longitude" + " | " + "Leak Occured Time" + Environment.NewLine + " " + reader.GetValue(0) + " | " + reader.GetValue(1) + " | " + reader.GetValue(2) + " | " + reader.GetValue(3));
}
reader.Close();
cmd.Dispose();
conn.Close();
}
catch (Exception)
{
MessageBox.Show("Cannot Open Connection...! ");
}
System.Threading.Thread.Sleep(30 * 1000);
}
}
private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
{
About_LocationFinder formhelp = new About_LocationFinder();
formhelp.Show();
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void button1_Click(object sender, EventArgs e)
{
}
private void Form1_Shown(Object sender, EventArgs e)
{
}
}
}