我无法使PagedDataSource
使用EntityCollection
对象的IEnumerated集合作为数据源。
PagedDataSource
接受集合作为数据源,但我不能使用CurrentPageIndex
和IsLastPage
等基本属性。
我的应用程序出现错误Cannot compute Count for a data source that does not implement ICollection.
我试着做
ICollection<Location> listlocations = Company.Locations;
但没有成功。
我能做什么?
代码段
protected void loadBuildings()
{
PagedDataSource pds = new PagedDataSource();
pds.DataSource = Company.Locations;
pds.AllowPaging = true;
pds.PageSize = Convert.ToInt16(ddlPageSize.SelectedValue);
pds.CurrentPageIndex = CurrentPage;
lnkbtnNext.Enabled = !pds.IsLastPage;
lnkbtnPrevious.Enabled = !pds.IsFirstPage;
buildingsDataList.DataSource = pds;
buildingsDataList.DataBind();
}
我不得不使用选项AllowCustomPaging
并定义自己的页面,因为EntityCollection
不支持ICollection
类。
我添加了以下代码来定义我的页面/项目
pds.VirtualCount = Company.Locations.Count();
pds.PageSize = 3;
pds.AllowCustomPaging = true;
以及我的页面生成方法中的一些其他代码
for (int i = 0; i < (pds.VirtualCount/pds.PageSize);i++)