就是做一个网上报障的东西,客户提交了内容之后,能不能让提交按钮发一条消息给另一个页面(管理页面),如果每隔一段时间让管理页自动刷新再提取数据库的数据,觉得性能不高又不太实时。请问这个问题具体是怎么实现的?
解决方案 »
- 关于IIS配置的教程
- 请问我用SqlDataAdapter读取的数据 怎么来判断读取的数据中的值?
- 关于《后退》的问题,顶着有分,在线等
- 求救有关HttpWebRequest、HttpWebResponse使用的疑问。
- DataView.RowFilter属性的问题!过滤出问题,语句错在哪里??谢谢!
- webgrid 的两个可能是永远也解决不了的问题.....
- 多语言实现的问题(关于MultiLang的)。
- ASP.NET程序,开发环境下,一切正常,安装到客户那里后,大部分正常,有些服务器端按钮点了后没有反应,为何?
- 100分求助,顶者有分
- [Jquery]获取文本数据
- 请问如何创建文件?
- 分别列出各大栏目10条记录,加最新记录,点击排行,最新推荐,求最有效率方法
if (!Page.IsPostBack)中,因为你还要定时刷新
定时刷新
页面
<head><meta http-equiv="refresh" content="30"></head>
---------------------
WEB方式,无法实现像CS程序那种推的方式,只能主动去获取,所以我这种情况,用页面自动刷新的方式获取新数据是最简单也是最有效的方式了.
所以只能刷新,或者你可以用xmlhttp来做,道理一样,都是去请求信息
只是js的不刷新而已
wse2.0 中的soap message来实现异步调用,
客户端在服务器段注册事件,当服务器段有消息时,激发该事件,通知客户端,
具体时限可以参考msdn
http://www.microsoft.com/china/MSDN/library/WebServices/WebServices/IntroducingtheWebServicesEnhanCEments2.0MessagingAPI.mspx
这是用 web service 写的两个无刷新动态返回数据...
不过可能效率不是很高.....
效率要求高的话可以考虑用上面的,用
wse2.0 中的soap message来实现异步调用,
<meta http-equiv="refresh" content="3">
方法二(使用webForm或者webservice):
在body的onload里面使用setTimeout循环调用函数,函数中使用XmlHttp对象和后台交互获得信息。
函数类似下面:
body onload="x()"
...
function x(){
//retrive data here
setTimeout("x()",3*1000); //Invoke self
}
里面用time控件去查询数据库
如果有停止同时显示页面提示
用户点击消息的同时,再次启动time控件。