代码隐藏中的声明性数据绑定与ADO.NET

时间:2011-03-16 01:23:45

标签: asp.net datasource

在最近了解ASP.NET GridView的尝试中,我看到mst示例使用直接在ASPX标记中声明的数据源。例如......

<asp:SqlDataSource ID="productDataSource" Runat="server" 
 SelectCommand="SELECT [ProductName], [UnitPrice], 
 [UnitsInStock], [QuantityPerUnit] FROM [Products]"
    ConnectionString=
    "<%$ ConnectionStrings:NWConnectionString %>">
</asp:SqlDataSource>

我已经看到了很多这种声明性数据源,而不是我教授(并且个人更喜欢)使用ADO.NET访问数据然后在代码隐藏中设置控件数据源的方式。

在ASPX中使用这种新型数据源声明是否有优势?有什么优点和缺点?

2 个答案:

答案 0 :(得分:3)

进行数据绑定的声明方式的一个缺点是分页效率不高。 gridview将从数据库中提取所有记录,然后它只显示您的页面。如果你有1,000,000条记录,那就不会很快。自己进行绑定,只能提取所需的记录。

对于简单表和小表,声明性方法需要较少的开发时间,并且内置了分页和排序。

对于我所研究的几乎所有真实世界的网格视图,构建数据集的查询的复杂性使得声明性方法不可行。

答案 1 :(得分:0)

声明数据绑定在直接情况下很有用,当然还有学习和演示。一旦你开始体验它,就可以继续使用代码驱动的设计,为自己省去痛苦。