【发布时间】:2012-03-06 15:55:49
【问题描述】:
我有一个包含 1000 个客户的列表,我通过 asp.net 中的 datalist 控件显示。该列表每页显示一个客户。
我用来绑定数据列表的查询是:
static public DataTable GetAllCustomers()
{
string sql = "Select * from [Customers]";
SqlDataAdapter da = new SqlDataAdapter(sql, ConnectionString);
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
我想要做的是一旦客户被查看它应该回到列表的底部,这样一旦用户第二次登录,他就不必从头开始查看同一个客户,查看客户应该到1000客户列表的底部,例如如果一旦查看客户1,下一次客户1应该成为1000客户,客户2应该成为客户1,希望它有意义。
对于如何实现此方案以及我必须在数据库和查询中进行哪些更改以实现此目的,我们将不胜感激。
【问题讨论】:
-
您是否正在更新客户数据?是否有多个人同时查看客户?如果要更新,您可以在查询中添加“最后更新”字段并按此排序 - 任何未更改的内容都会首先出现
-
每个用户?还是对所有用户都一样?
-
@KAJ Yeh 有多个用户同时登录,大约5个,还有一个可选的更新选项可用
-
所有用户都应该相同。
-
如果仅仅查看客户就足以导致他们被推到列表的后面,您可能需要处理 DataList 的 ItemCreated 事件并识别当前项目并进行数据库更新 - 类似上面“最后更新”的想法,但最好命名为“最后查看”
标签: asp.net sql-server database datalist