就是做一个网上报障的东西,客户提交了内容之后,能不能让提交按钮发一条消息给另一个页面(管理页面),如果每隔一段时间让管理页自动刷新再提取数据库的数据,觉得性能不高又不太实时。请问这个问题具体是怎么实现的?

解决方案 »

  1.   

    参照CSDN那个有关短消息的做法就可以,在管理页面的Page_load里面先做加栽数据,为数据设一个标志位一开始为空,如果判断到有为空的数据,则显示个图片或着超连接什么的。记得这些代码不要写到
    if (!Page.IsPostBack)中,因为你还要定时刷新
    定时刷新
    页面
    <head><meta http-equiv="refresh" content="30"></head>
      

  2.   

    你可以定时检查数据库中有没有新数据,也就是你说的让管理页自动刷新而重新获取数据,可以用下面的meta标签来定时刷新,其中的3指三秒刷新一次:<meta http-equiv="refresh" content="3">
      

  3.   

    如果每隔一段时间让管理页自动刷新再提取数据库的数据,觉得性能不高又不太实时
    ---------------------
    WEB方式,无法实现像CS程序那种推的方式,只能主动去获取,所以我这种情况,用页面自动刷新的方式获取新数据是最简单也是最有效的方式了.
      

  4.   

    web程序,服务器端是不能主动发消息的,只能客户端去请求
    所以只能刷新,或者你可以用xmlhttp来做,道理一样,都是去请求信息
    只是js的不刷新而已
      

  5.   

    只有不断刷新或用XMLHTTP才能实现!
      

  6.   

    用 上边的,效率不是很高,不过一般情况都能满足.....你要是对效率要求很高的话可以试试
    wse2.0 中的soap message来实现异步调用,
    客户端在服务器段注册事件,当服务器段有消息时,激发该事件,通知客户端,
    具体时限可以参考msdn
    http://www.microsoft.com/china/MSDN/library/WebServices/WebServices/IntroducingtheWebServicesEnhanCEments2.0MessagingAPI.mspx
      

  7.   

    http://www.cnblogs.com/gwazy/archive/2005/05/10/152205.htmlhttp://www.cnblogs.com/gwazy/archive/2005/06/11/172275.html
    这是用 web service 写的两个无刷新动态返回数据...
    不过可能效率不是很高.....
    效率要求高的话可以考虑用上面的,用 
    wse2.0 中的soap message来实现异步调用,
      

  8.   

    方法一:
    <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
    }
      

  9.   

    同意楼上的写个类
    里面用time控件去查询数据库
    如果有停止同时显示页面提示
    用户点击消息的同时,再次启动time控件。