0
我想将ListView控件绑定到包含在DataSet类型中的数据。 我还介绍了通过DataPager类型进行分页。获取IListSource不包含ASP.NET中的任何数据源异常
第一次调用DataBind时,绑定发生完美。 但是,当我单击Next检索下一组结果时,即使我的函数返回相应的DataSet,也无法进行绑定。
void getSubSet(int rowindex, DataSet resultSet, int pageSize)
{
DataSet ds = new DataSet();
DataTable tb = new DataTable();
for (int cols = 0; cols < resultSet.Tables[0].Columns.Count; cols++)
{
DataColumn dc = new DataColumn(resultSet.Tables[0].Columns[cols].ColumnName,
resultSet.Tables[0].Columns[cols].DataType);
tb.Columns.Add(dc);
}
for (int i = rowindex; ((i < resultSet.Tables[0].Rows.Count) && (i < rowindex + pageSize)); i++)
{
DataRow rowToBeAdded = resultSet.Tables[0].Rows[i];
DataRow newRow;
newRow = tb.NewRow();
for (int j = 0; j < resultSet.Tables[0].Columns.Count; j++)
newRow[j] = rowToBeAdded[j];
tb.Rows.Add(newRow);
}
ds.Tables.Add(tb);
return ds;
}
DataSet resultSet包含所有结果。
上面的代码返回完美的效果, 但在
LV.DataSource = getSubSet(newIndex, resultSet, pageSize);
LV.DataBind();
其中LV是在.aspx页面ListView控件。在分页期间的第二次调用返回异常。
请帮忙!谢谢!
是的,我检查,由getSubSet返回的DataSet不是空的,并包含有效的数据。此外,我不能使用SqlDataSource,因为我正在使用Web服务来获取数据,它以DataSet格式返回数据。 – Kaniks 2010-12-22 04:43:25