如何组织数据集查询以提高性能

时间:2008-08-18 13:21:46

标签: asp.net database performance

我不知道何时向数据集添加tableadapter或来自工具箱的查询。这有什么不同吗?

我也不知道在哪里创建适配器的实例。

  • 我应该在Page_Load中进行吗?
  • 当我打算使用它时,我应该这样做吗?
  • 我在创建新实例时是否打开了新连接?

这似乎并不重要,但每当我创建一个查询时,我脑子里的一个小声音就会问我这些问题。

1 个答案:

答案 0 :(得分:2)

  

当我打算使用它时,我应该这样做吗?

我建议您只在使用时检索数据。如果您不需要它,则没有理由通过在Page_Load中检索它来浪费资源。如果在整个页面加载过程中多次需要它,请考虑将查询结果保存到私有变量或集合中,以便在整个页面加载过程中可以多次重复使用相同的数据。

  

我在创建新实例时是否打开了新连接?

Asp.net处理connection pooling,并以有效的方式打开和关闭连接。你不应该担心这个。

从性能角度考虑的另一件事是避免使用数据集和TableAdapter。在许多情况下,他们将extra overhead添加到使用Linq to Sql,Stored Procedures或DataReaders时不存在的数据检索中。