【问题标题】:Does extracting rows from an SqlDataSource using directcast cause another trip to SQL Server?使用直接广播从 SqlDataSource 中提取行会导致再次访问 SQL Server 吗?
【发布时间】:2013-02-07 15:31:12
【问题描述】:

我一直在寻找一种从 VB.NET 代码中的 SqlDataSource 对象中提取数据的方法,但查看我为此找到的代码让我相信在 DirectCast 期间再次执行了 select 语句。

有谁知道即使SqlDataSource 之前已经运行过,这种用法是否会导致运行额外的选择语句?

我得到这个的帖子在这里:How can i iterate through row of particular table associated with SqlDataSource control in VS 2008?

代码如下:

Dim datareader = DirectCast(SqlDataSource2.[Select](DataSourceSelectArguments.Empty), SqlDataReader)

While datareader.Read()        
     Label2.Text = datareader("LastName").ToString()
End While
datareader.Close()

【问题讨论】:

    标签: sql sql-server vb.net


    【解决方案1】:

    数据读取器将从源中读取。

    如果源是数据库,那么每次调用Read()时,reader都会从数据库中读取。

    我不清楚你的DirectCast 是做什么用的,或者你为什么使用它。

    【讨论】:

    • 你说的有道理。我试图挂钩我认为页面上已经填充的数据源(因为以前另一个控件已经使用了 sqldatasource,比如在页面预加载时),这样试图避免再次访问数据库并只使用已经加载的数据.但从你所说的看来,我确实会再次前往 DB。
    • 点赞或将其标记为答案以提高您的会员分数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多