以固定间隔更新SQL Server中的Textbox值

时间:2016-03-07 10:00:23

标签: c# asp.net sql-server

我正在尝试在asp.net页面上查看SQL Server数据。 SQL Server中的值将动态更改。我需要在我的aspx页面上更新这些值。我已经创建了一个计时器线程来从SQL Server(实时监控系统)获取数据,但它不起作用并在文本框中显示空值。帮我解决这个问题

protected void Page_Load(object sender, EventArgs e)
{
    System.Timers.Timer myTimer = new System.Timers.Timer();
    myTimer.Elapsed += new ElapsedEventHandler(DisplayTimeEvent);
    myTimer.Enabled = true;
    myTimer.AutoReset = true;
    myTimer.Interval = 1000;
    myTimer.Start();
}

public void DisplayTimeEvent(object source, ElapsedEventArgs e)
{
    SqlConnection sc = new SqlConnection("Data Source=SCADASTATION\\WINCC;Initial Catalog=LIVEDATA;Persist Security Info=True;User ID=sa;Password=root");

    SqlCommand com = new SqlCommand();
    com.Connection = sc;

    sc.Open();

    SqlDataReader read = (null);
    com.CommandText = ("SELECT TOP 1 * FROM DATATABLE1 ORDER BY 1 DESC ");
    read = com.ExecuteReader();

    while (read.Read())
    {
        TAG1.Text = read[1].ToString();
        TAG2.Text = read[2].ToString();
        TAG3.Text = read[3].ToString();
        TAG4.Text = read[4].ToString();
        TAG5.Text = read[5].ToString();
        TAG6.Text = read[6].ToString();
        TAG7.Text = read[7].ToString();
        TAG8.Text = read[8].ToString();
        TAG9.Text = read[9].ToString();
        TAG10.Text = read[10].ToString();
        TAG11.Text = read[11].ToString();
        TAG12.Text = read[12].ToString();
    }

    sc.Close();
}

1 个答案:

答案 0 :(得分:1)

您可以在每个指定的时间间隔后轻松刷新页面。为此,我们使用元标记。

<meta http-equiv="refresh" content="60">

此元标记将包含在<head>标记中 这里http-equiv="refresh"表示需要重新加载页面 content=60告诉重新加载页面的时间延迟。

您可以将时间更改为所需的时间延迟。