C# 每x次刷新一次查询

C# 每x次刷新一次查询,c#,sql,wpf,C#,Sql,Wpf,我目前正在做一个监控应用程序,我有一个sql查询,它提供了我必须放入ListView中的所有数据,但现在我想每一分钟刷新一次查询。这就是它的样子。有人能帮我吗 string text = System.IO.File.ReadAllText(@"path\query.txt"); OracleCommand command = new OracleCommand(text, conn); OracleDataReader data =

我目前正在做一个监控应用程序,我有一个sql查询,它提供了我必须放入ListView中的所有数据,但现在我想每一分钟刷新一次查询。这就是它的样子。有人能帮我吗

string text = System.IO.File.ReadAllText(@"path\query.txt");              

OracleCommand command = new OracleCommand(text, conn);               
OracleDataReader data = command.ExecuteReader();

while (data.Read())

您可以使用计时器在1分钟后执行,如下所示:

private Timer timer; 

public void InitTimer()
{
    timer= new Timer();
    timer.Elapsed += OnTimerTick;
    timer.Interval = 1000; // Remember this is milliseconds
    timer.Start();
}

private void OnTimerTick(object sender, ElapsedEventArgs e)
{
    string text = System.IO.File.ReadAllText(@"path\query.txt");              

    OracleCommand command = new OracleCommand(text, conn);               
    OracleDataReader data = command.ExecuteReader();

    while (data.Read())
    ...
}

你可以使用缓存过期限制来查询我必须将我的所有主代码放在一个私有的void中,但它不起作用为什么你需要返回除
void
之外的任何内容来刷新你的视图?你在使用MVVM吗?@Juan Carlos Rodriguez的方法就是这样。你可以从
OnTimerTick
调用你的公共代码,没问题。就是这样@linuxrocks。。。您不需要将您的方法复制到
OnTimerTick
方法,您可以从那里调用它,但我担心他/她没有使用MVVM,如果他/她试图从
经过的事件中更新
项资源
,它将抛出异常。