C# 多个SQLDataSource如何工作?

C# 多个SQLDataSource如何工作?,c#,asp.net,visual-studio-2010,C#,Asp.net,Visual Studio 2010,一点背景知识。。。我有一个网页,只包含6个下拉列表和一个网格。用于填充这些数据的查询非常简单(最多4行),并且已被放置到7个单独的SQLDataSource中 我面临的问题是,初始页面加载花费的时间太长,因此我想知道SqlDataSource连接实际上是如何工作的 页面是否为所有源打开一个事务,然后在最后关闭?或者它(正如我所怀疑的)为每个SqlDataSource打开和关闭一个单独的事务吗?即使它对数据库进行了7次单独的调用(我怀疑是这样),考虑到您正在用我只能想象的一小部分数据填充下拉列表,

一点背景知识。。。我有一个网页,只包含6个下拉列表和一个网格。用于填充这些数据的查询非常简单(最多4行),并且已被放置到7个单独的SQLDataSource中

我面临的问题是,初始页面加载花费的时间太长,因此我想知道SqlDataSource连接实际上是如何工作的


页面是否为所有源打开一个事务,然后在最后关闭?或者它(正如我所怀疑的)为每个SqlDataSource打开和关闭一个单独的事务吗?

即使它对数据库进行了7次单独的调用(我怀疑是这样),考虑到您正在用我只能想象的一小部分数据填充下拉列表,也不应该花那么长时间

对于这个问题,有几种解决方案可能会对您有所帮助

  • 在要查询的表上设置索引
  • 在数据源中优化您的sql(您是否正在进行任何时髦的联接/子查询?)
  • 显式选择下拉列表(显示和数据成员)所需的列,仅此而已
    即使它对数据库进行了7次单独的调用(我怀疑是这样),考虑到您正在用我只能想象的一小部分数据填充下拉列表,也不应该花那么长时间

    对于这个问题,有几种解决方案可能会对您有所帮助

  • 在要查询的表上设置索引
  • 在数据源中优化您的sql(您是否正在进行任何时髦的联接/子查询?)
  • 显式选择下拉列表(显示和数据成员)所需的列,仅此而已
    谢谢你的建议,并不是查询速度造成了我的问题。。最初连接到数据库需要一段时间,因此我想知道SqlDataSources是否会导致7个单独的连接,或者VS是否意识到它们连接到同一个位置,并且只为所有人打开一个连接?感谢您的建议,并不是查询速度造成了问题。。最初连接到数据库需要一段时间,因此我想知道SqlDataSources是否会导致7个单独的连接,或者VS是否意识到它们连接到同一个位置,并且只为所有人打开一个连接?