日期:2014-05-17  浏览次数:20668 次

asp.net页面监听数据库如何实现?
具体需求是这样的:
1.当数据库产生一条新纪录的时候,在页面上要得到一条消息通知,然后用户去修改这条记录。

asp.net 多线程

------解决方案--------------------
通过ajax每隔一段时间去获取数据库的数据进行判断
------解决方案--------------------
页面循环请求后台程序,后台程序不断检测数据库记录的最后插入时间
------解决方案--------------------
可以用ajax长轮询完成你的需求

------解决方案--------------------
http://www.cnblogs.com/hoojo/p/longPolling_comet_jquery_iframe_ajax.html
------解决方案--------------------
轮 询              
------解决方案--------------------
引用:
Quote: 引用:

可以用ajax长轮询完成你的需求


我用了普通轮询,在服务端加了一个.ashx的处理文件响应客户端的轮询。
开始的时候运行还正常。但是跑了半个小时之后就崩掉了。用Chrome调试的截图:


最后一条Get没有成功,“pending”了,请问是什么原因啊?
使用长轮询最大的好处就是当没有信息时服务器可以hold住此次请求消息,等到有消息返回时再继续,你这样操作会导致服务器处理的请求过多挂掉的
------解决方案--------------------
google:“SignalR”

其实你可以自己在vs的工具-库程序包管理器 里搜索 "WebSocket"就会看到很多net方面的支持库,其中前面两个下载量最大的微软出品的,第一个就是SignalR
------解决方案--------------------
长轮询
------解决方案--------------------
$(document).ready(function(){
setInterval(“方法名()”,时间);

});
function 方法名()
{
       window.location.reload();刷新

}