如何自动轮流排序?

chengxiaofeng 2006-12-04 06:29:14
<META HTTP-EQUIV="Refresh" CONTENT="60; URL=index.aspx">这是自动刷新。
当下次刷新时,如何把DATAGRID里的记录(比如有10条,而且这10条记录都是同一时间隔的)
如何要让DATAGRID里的这10条记录每分钟轮流排第一呢?
...全文
262 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
HJS1820 2006-12-05
  • 打赏
  • 举报
回复

結帖時接點分....
  • 打赏
  • 举报
回复
如果你的排序是影响“所有人”并且需要永久保存的,就在数据库中完成。如果是局限于页面的,当你开两个页面的时候相互不影响对方的排序,就不能在数据库中完成,而应该在ViewState中完成。你需要将这10条记录放在ViewState中作为数据源,其中有内存中产生的序号字段并且每次刷新都重新编号,而不是每次刷新都读取数据库。
sxlfybb 2006-12-05
  • 打赏
  • 举报
回复
其实如果按二楼的方法说的话,是不用在数据库中去修改的,你可以在数据源中控制呀.在数据源是datatable的时候你可以添加列的.操作完成之后再将defaultview赋给dg就可以了.
chengxiaofeng 2006-12-05
  • 打赏
  • 举报
回复
哪位高手帮忙啊,我用SQL加一个字段,然后又能怎么达到自动更新呢?什么方法都行,只要能一分钟后DATAGRID记录值自动轮着来排第一就可以了
jxjjljf 2006-12-05
  • 打赏
  • 举报
回复
ding
chengxiaofeng 2006-12-05
  • 打赏
  • 举报
回复
你们说的也没错,就是难实现。我现在不知道怎么写。
最后我在SQL中搞了个随机排序,算解决问题吧。
来着有分,来顶啊
chengxiaofeng 2006-12-04
  • 打赏
  • 举报
回复
我用的是在数据源绑定后添加的字段,如果你是说在SQL数据序中增加一个字段?哪不是很惨,哪我每分钟都要去修改数据库,又如何写呢?
哪我又如何判断60秒后呢?
<datagrid ToolTip="第一列为添加的自动标识列">
<asp:BoundColumn HeaderText="序号"></asp:BoundColumn></datagrid>
private void AddOrderID(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//如果当前项不为空
if(e.Item.ItemIndex != -1 )
{
//取得当前项的索引值加1,因为项的索引值是从0开始的.
int orderID = e.Item.ItemIndex+1;
//设置第一列为的单元格内容为当前项索引值加1
e.Item.Cells[0].Text = orderID.ToString();
}
}
这是数据源:
public void bind()
{
...
DataSet ds = new DataSet();
da.Fill(ds,"testTable");
DataView view = ds.Tables["testtable"].DefaultView;
this.DataGrid1.DataSource = ds.Tables["testTable"].DefaultView;
this.DataGrid1.DataBind();
da.Dispose();
con.Close();
}
这是在为datagrid增加的字段,然后咱办?
最后一只恐龙 2006-12-04
  • 打赏
  • 举报
回复
增加一个排序字段,每次读取,顺便把第一个排到最后,其它的序号都减1
如序号为1~10,1变成11,然后都减1

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧