我开发了一个操作数据库数据的应用程序。当我从我的PC或我附近的PC(在我的公司,同一台服务器上)运行应用程序时,它正常工作,但是当来自同一公司而另一台服务器(另一个国家/地区)的某个人试图这样做时,他有很大的LAG。
我知道查询有点"到很多":
SqlCommand command = new SqlCommand("SELECT * FROM dbo.Person", con)
更多数据 - >更多滞后
但我需要数据库中的所有数据填充ListView,然后导出到Excel文档。
我尝试的事情:
我创建了一个将执行此命令的后台工作程序,当工作人员完成时,我使用如下数据填充ListView:
private void ViewAllWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
while (Oreader.Read())
{
ListViewItem item = new ListViewItem(Oreader["ID"].ToString());
item.SubItems.Add(Oreader["DecadeOfBirth"].ToString());
// etc
}
}
在这种情况下你会做什么?什么可以帮助减少滞后?什么是正确的方法?
答案 0 :(得分:1)
解决此问题的唯一正确方法是减少您带回用户的数据量。
让我举个例子:
答案 1 :(得分:0)
如果您的应用程序基于 IIS (例如 ASP.NET ),您可以使用Application Object并保存表'Person'中的所有数据申请开始了。