10.2 数据控件
ASP.NET中提供了一系列数据控件,如Chart、GridView和DetailsView控件等。大体来分,可以将最常用的控件分为数据源控件和数据绑定控件。
10.2.1 数据源控件
数据源控件是数据绑定体系结构中的一个关键部分,能够通过数据绑定控件来提供声明性编程模型和自动数据绑定行为。简单来说,数据源控件概括了一个数据存储和可以针对所包含的数据执行的一些操作。数据绑定控件通过DataSourceID属性与一个数据源控件相关联。
ASP.NET中提供的数据源控件允许开发者使用不同类型的数据源,如数据库、XML文档或者中间层业务对象。如表10-1所示为ASP.NET中提供的7种数据源控件。
表10-1 常用的数据源控件
在表10-1中,SiteMapDataSource、SqlDataSource和XmlDataSource控件最为常用。下面以SqlDataSource控件为例,通过范例5进行说明。
【范例5】
读取数据库中UserInfo表的全部数据,并将表中UserName字段的值绑定到ListBox控件。步骤如下。
(1)从工具箱中拖动ListBox控件和SqlDataSource控件到页面中,并且指定ListBox控件的Width属性值为150。
(2)在页面的【设计】窗口中选中SqlDataSource控件并单击右上角的小按钮,这时显示SqlDataSource任务栏,如图10-1所示。
图10-1 SqlDataSource控件的任务栏
(3)单击图10-1中的【配置数据源】选项弹出【配置数据源】对话框,开发者可以在对话框中选择数据源,也可以单击【新建连接】按钮添加连接,如图10-2所示。
图10-2 添加连接
(4)在图10-2中输入服务器名,然后选择SQL Server身份验证,并输入用户名和密码,再选择要连接的数据库,设置完毕后单击【测试连接】按钮进行测试,如图10-3所示。
图10-3 测试连接
(5)当显示如图10-3所示的“测试连接成功”提示后依次单击【确定】按钮,然后单击【下一步】按钮,弹出如图10-4所示的对话框。该对话框提示是否将连接字符串保存到应用程序的配置文件中,默认情况下进行保存,如果不保存,不要选择图中的复选框即可。
图10-4 是否保存配置文件
(6)单击图10-4中的【下一步】按钮执行下一步操作,如图10-5所示。在该图中选择要获取的内容,默认情况下选中*,即表示获取所有字段的值,这里只选中UserName字段。如果有需要,还可以单击图中的WHERE和ORDER BY等按钮。
图10-5 配置Select语句
(7)选择完毕后单击图10-5中的【下一步】按钮,默认效果如图10-6所示。
图10-6 默认测试查询
(8)单击图10-6中的【测试查询】按钮查看效果,如图10-7所示。
图10-7 测试查询效果
(9)单击图10-7中的【完成】按钮完成配置,为页面中的ListBox控件指定DataTextField属性和DataValueField属性。代码如下。
UserName 字 段 的 集 合 : <asp:ListBox ID="lbNameList" DataSourceID="SqlDataSource1" runat="server" Width="150" DataTextField="UserName" DataValueField= "UserName"></asp:ListBox><br /> <asp:SqlDataSource ID="SqlDataSource1" runat="server" SelectCommand="SELECT [UserName] FROM [UserInfo]" onnectionString="<%$ ConnectionStrings:UserRegisterConnectionString %>"></asp:SqlDataSource>
(10)运行页面查看效果,如图10-8所示。
图10-8 XmlDataSource控件的使用
提示
无论是上述案例介绍的SqlDataSource控件,还是表10-1中的其他数据源控件(如XmlDataSource和SiteMapDataSource),它们的使用方法与SqlDataSource控件相似,这里不再一一介绍。
10.2.2 数据绑定控件
数据源控件不能够显示数据,它必须与数据绑定控件一起使用,如前面介绍的DropDownList、ListBox和CheckBoxList等都是数据绑定控件。除了这些简单的绑定控件外,ASP.NET中还提供了一些高级的数据绑定控件,这些控件可以用来显示列表信息与详细信息,如表10-2所示列出了一些常见的数据绑定控件。
表10-2 常见的数据绑定控件