Databind如何使用DataReader

时间:2008-10-08 18:22:31

标签: asp.net data-binding

如果我对其数据源设置为DataReader的页面上有控件,那么该控件是否在设置数据源时消耗读取器,或者在Databind执行之前数据头是否继续存在?

执行Databind时,幕后实际发生了什么?

3 个答案:

答案 0 :(得分:1)

应该在执行DataBind时使用它。

答案 1 :(得分:1)

根据Control,DataBind()会将数据绑定到 控制。它通过迭代DataSource并创建来完成此操作 需要的Html和其他控件。

对于DropDownList,DataBind()将为每个创建ListItem 记录在DataSet中或ArrayList中的每个元素。

稍后Render方法调用DropDownList,它返回 选择标记的Html。它还为每个ListItem创建Html 在Select标签内返回Option标签。

对于Label,DataBind()会将Text设置为您从中拉出的值 数据库(例如)。

如果您没有为特定控件调用DataBind(),您也可以 确保为控件和调用设置了DataSource 的Page.DataBind()。这将通过Page和Page中的Controls 为每个Control调用所有DataBinds。

答案 2 :(得分:0)

数据绑定期间对datareader的控制是什么?它是否将其复制到其内部结构中并处理datareader然后呈现?

如果我在页面上有10个控件并将每个控件上的数据源设置为不同的datareader,然后调用page.databind,那么数据存储器将在整个时间内存在(从创建点到page.databind完成的点)它在处理)?