我做了一个继承自repeater的控件pager_repeater,主要是实现分页功能
pager_repeater的datasource为IList接口
在web页面中,我利用模版列来读取数据,行如<%#DataBinder.Eval(Container.DataItem,"id")%>
但是我现在只有datareader数据源,该如何给pager_repeater提供数据源呢?
pager_repeater的datasource为IList接口
在web页面中,我利用模版列来读取数据,行如<%#DataBinder.Eval(Container.DataItem,"id")%>
但是我现在只有datareader数据源,该如何给pager_repeater提供数据源呢?
解决方案 »
- 关于jquery ajax返回值判断问题
- 谁会 来看看 , 一直纠结我的触发器。
- gridview问题
- 上传文件后怎么在文本框显示出上传文件
- 多台web服务器,如何同步web程序
- 做网站的时候,是用一些经典的dll好呢,还是自己写代码比较好?
- web服务器控件和html服务器控件的效率问题
- 如何用Request.Form["classlb"].ToString() 取用户控件 user.Ascx 中的 htmlcontrol 的值?
- 用ashx处理图片..Access是否有Sql Server里的img类型的字段?
- Web项目名称更改的问题,请指点.
- 请各位帮我看一下这个错误是什么问题?
- ASP.net 数据项的超链接
但是ArrayList没有列名,所以就不能再pager_repeater中绑定
该怎么办呢,高手帮忙
对,转化为DataTable好
我试下
ArrayList values = new ArrayList();
while(reader.Read())
{
values.Add(new myobject(reader["id"]/*,...other cols*/));
}
然后新建一个myobjcet类,公布一个构造函数和一些只读属性
public class myobject
{
privae string _id;
//other properties
public myobject(string id/*,...other cols*/)
{
_id = id;
//other properties
}
public string id
{
get {return _id;}
}
//other properties
}
//绑定数据
<%#DataBinder.Eval(Container.DataItem,"id")%>
这样就ok了
if (reader.HasRows)
{
while (reader.Read())
{
Model info = new Model();
if (reader[0] != DBNull.Value)
info.Name = reader.GetString(0);
if (reader[1] != DBNull.Value)
info.ID = reader.GetInt64(1);
if (reader[2] != DBNull.Value)
info.Date = reader.GetDateTime(2); list.Add(vfInfo);
}
}
如果转为DataTable,则可以DataTable.Load (IDataReader) (2.0)