请问.NET里的Detailsview在Page_Load中怎么绑定数据啊

来源:百度知道 编辑:UC知道 时间:2024/05/19 11:23:02
我在detailsview里用手工数据绑定时
protected void Page_Load(object sender, EventArgs e)
{
int id = Convert.ToInt32(Request.QueryString["uid"]);
if (!Page.IsPostBack)
{
dvUserShow.DataSource = UserBLL.GetAllById(id);
dvUserShow.DataBind();

}
}
总是提示dvUserShow.DataSource这里(数据源的类型无效。它必须是 IListSource、IEnumerable 或 IDataSource),没明白什么意思?
UserBLL.GetAllById(id)方法返回的是实体类,不行吗,怎么解决啊?

当然不行 DataSource必须是List<>、 枚举、 或者是dataset和datatable 类型

snake64误解
DataSource必须是实现了IEnumerable接口的数据类型,其中有GetEnumerator方法.用yield进行返回..
这个是跌代器的入口点.
GetEnumerator中有MoveNext,Reset等方法..