请问:C#-Web页面的程序中如何动态显示对数据库更新的进度?(进度条?)

冰灵公主 2009-01-09 02:14:34
我的程序是VS-C#-WEB页面程序
要从其它数据文件中读数据到SQL数据库中

我用的DataTable把读到的数据存储起来,然后一行行的插入到SQL数据库中

数据有很多,几万条,程序执行起来需要一段时间,于是相用一个进度条来显示当前程序执行的进度



从网上查了不少回了,但是没看明白,也跟我的程序不太一样,

我的这个进度条该怎么实现呢?
...全文
854 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
冰灵公主 2009-01-13
  • 打赏
  • 举报
回复
看来大家都回家过年去了

我的贴子两天没人回了

呵呵,谢谢以上各位的热情回复!

祝大家牛年发大财!

全家身体健康!

新年快乐!!

结贴去……
冰灵公主 2009-01-13
  • 打赏
  • 举报
回复
[color=#FF00FF]看来大家都回家过年去了

我的贴子两天没人回了

呵呵,谢谢以上各位的热情回复!

祝大家牛年发大财!

全家身体健康!

新年快乐!!

结贴去……[/
color]
kimmking 2009-01-09
  • 打赏
  • 举报
回复
ajax定时刷进度
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 laidon 的回复:]
真正实时不太容易,因为服务器什么时候处理完很难掌握那么准确,可以声明int 变量来表示总数有几条,当前插入到第几条,在一个label来显示出来就是了
[/Quote]

这样不行的,标签总是在程序结束后才可以看见

我试了试状态栏,到是可以显示,就是用javascript window.setstatus();

但是总觉得状态栏提示总是在程序真正运行完后状态栏才变化

是不是因为程序在运行完后才执行javascript代码呢?


还有个问题,就是设置状态栏是不是很耗资源呢?
laidon 2009-01-09
  • 打赏
  • 举报
回复
真正实时不太容易,因为服务器什么时候处理完很难掌握那么准确,可以声明int 变量来表示总数有几条,当前插入到第几条,在一个label来显示出来就是了
koukoujiayi 2009-01-09
  • 打赏
  • 举报
回复
微软的AJAX中的UpdateProgress可以实时
显示"数据在处理中....",处理完毕自动消失!!
实时显示进度条是办不到的,应为数据已经提交到服务端,
服务端究竟要处理多少时间,只有天知道,
只有处理完以后回发才能知道,所以UpdateProgress提供了这样的功能,
即提交显示"数据在处理中....",服务端处理完回发后,自动消失!!
glt3260053 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 HDNGO 的回复:]

[/Quote]
学习
xutao888 2009-01-09
  • 打赏
  • 举报
回复
就搞个类似Windows 2000那样的进度条就行了,让用户感觉程序还在做事就行,不用搞这么复杂
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhaoguo2007 的回复:]
AJAX~~~~~~~~~~~~~
[/Quote]

好像是可以,但是具体该怎么实现呢?
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
那能在浏览器下面的状态栏中显示信息吗?

比如显示:更新已完成***条数据
zhaoguo2007 2009-01-09
  • 打赏
  • 举报
回复
AJAX~~~~~~~~~~~~~
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 renfei0730 的回复:]
不好意思,你是web程序!那不太好办……
[/Quote]

没关系的
renfei0730 2009-01-09
  • 打赏
  • 举报
回复
不好意思,你是web程序!那不太好办……
renfei0730 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 renfei0730 的回复:]
[/Quote]数据是循环插入的吧?每循环一次对一个变量加1,除以总数,得到进度!进度条如何用不用说吧
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
HDNGO

谢谢你的代码,可是不能正确显示我的数据更新情况啊?

我想把具体更新了多少条数据显示出来

有个正确的进度示意也行

HDNGO 2009-01-09
  • 打赏
  • 举报
回复
<div id="doing" runat="server" style="Z-INDEX: 12000; LEFT: 0px; WIDTH: 100%; CURSOR: wait; POSITION: absolute; TOP: 0px; HEIGHT: 100%"> 
<table width="100%" height="100%">
<tr align="center" valign="middle">
<td>
<table width="169" height="62" bgcolor="#99cccc" style="FILTER: Alpha(Opacity=75); WIDTH: 169px; HEIGHT: 62px">
<tr align="center" valign="middle">
<td>页面提交中.<br>
Loading.</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<asp:Button ID="Button1" runat="server" Text="Button" />



protected void Page_Load(object sender, EventArgs e)
{
this.Button1.Attributes.Add("onclick", "javascript:document.getElementById('doing').style.visibility='visible';");
for (int i = 0; i < 10; i++)
{
System.Threading.Thread.Sleep(1000);
}
}

override protected void OnPreRender(EventArgs e)
{
doing.Style.Add("visibility", "hidden");
}


提交显示“页面提交中”~~ 你可以换成你想要的文字或者图~
冰灵公主 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 much0726 的回复:]
WEB页面程序 -不可以在数据库操作期间实时对客户端进行响应.
只有操作前和操作后的响应。
使用AJAX也只能在操作前和操作后响应一次.
----
也许实时可以实现,不过不太容易.
[/Quote]

线程可以在页面上实现吗?

但是我不会用线程
HDNGO 2009-01-09
  • 打赏
  • 举报
回复
放个LOADING图片好了~
加载更多回复(4)

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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