使用xml为列表控件绑定数据
作者: enrico elizar samuel
了解使用xml为列表控件绑定数据的各种不同的方法。
介绍
在web开发项目中,我们需要经常写一些代码从数据源读取动态数据到列表控件中。在经典asp时期,这是一件相对比较困难的任务。例如,我们必须查询数据库,找回 recordset
并且在手动创建html标签时还要重述 recordset
。
现在在asp.net中,你做同样的事情有了更好的办法。此外,除了用数据库作为数据源,你还可以使用各种数据源,比如xml文件。哪一个更好呢?这会在性能、适应性、可靠性、易配置性、安全等方面引起争论。在这里,我不想讨论这些。
这篇文章讨论了几种可选择的办法给列表控件绑定不同类型的数据源(主要是xml文件)。尽管我们使用listbox
作为例子,但你可以很容易地把这种技术扩展到其他从 system.web.ui.webcontrols.listcontrol
类继承而来的列表控件。它们包括 checkboxlist
、 dropdownlist
和 radiobuttonlist
。
硬编码列表框
作为开始,让我们回忆一下通常我们是怎样用html定义一个列表框 (listbox) 的。下面展示了一个列表框的原始代码。这是最简单的方法,且费用最少,但是缺少一些弹性来控制列表框的行为。
<select size="1" id="lstpizzatopping">
<option value="supreme">supreme</option>
<option value="italianclassic">italian classic</option>
<option value="meatlover">meat lover</option>
</select>
在asp.net中,你可以使用列表框得到同样的结果,但是具有更多性能来控制它的行为和属性。
<asp:listbox rows="1" id="lstpizzatopping" runat="server">
<asp:listitem value="supreme">supreme</asp:listitem>
<asp:listitem value="italianclassic">italian classic</asp:listitem>