服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - ASP.NET教程 - 在Asp.net下实现变长连接的web即时应用的实现范例及ReverseAjax的演示介绍

在Asp.net下实现变长连接的web即时应用的实现范例及ReverseAjax的演示介绍

2019-09-25 10:36asp.net教程网 ASP.NET教程

根据公司近期的一个培训整理的资料,附件包括一个完整的使用变长连接的web即时聊天室的范例和针对ReverseAjax的ppt培训文稿,其中ppt中包含了对范例程序的完整讲解

ReverseAjax 反转AJAX是一种旨在将逻辑控制权转移到服务端的Web实现模式 
何谓控制权转移 
  传统的AJAX调用一般由客户端行为触发,比如说获取区域数据,异步验证等。 
  ReverseAjax将控制权转交给服务端,就像服务端触发客户端事件一样,即很早的Web推的技术。 
ASP.NET实现变长连接需要使用到异步页面的技术,同时该页面需要禁用会话来实现每次请求都产生一个新的实例执行。 

复制代码代码如下:


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="response.aspx.cs" Inherits="_Default" Async="true" AsyncTimeout="30" EnableSessionState="False"%> 
if (Request.Form.Count>0) 

if (Request.Form["type"] == "loop") 

ChatTask task = new ChatTask(this.Context); 
task._chatNow = this.ChatNow;//有新的消息的回调方法,即为通知处理,这个时候释放掉连接 
string user = Request.Form["user"].Trim(); 
PageAsyncTask async = new PageAsyncTask(new BeginEventHandler(task.OnBegin), new EndEventHandler(task.OnEnd), new EndEventHandler(task.OnTimeout), user); 
Page.RegisterAsyncTask(async); 
Page.ExecuteRegisteredAsyncTasks();//异步执行 


具体代码和实现效果请参见范例。 
附件: 
范例程序: ReverseAjaxChat范例.rar

延伸 · 阅读

精彩推荐