Web里面使用WCF,你可以看看相关资料

解决方案 »

  1.   

    http://bbs.csdn.net/topics/390671986
    这里不是有人写了一个SignalR 的DEMO么
      

  2.   

    WCF而已,去瞧瞧那方面的知识
      

  3.   


    NameValueCollection nvcGet = HttpContext.Current.Request.QueryString;//这里可以取所有get过来的值
     NameValueCollection nvcPost = HttpContext.Current.Request.Form;//这里可以取所有post过来的值
    把所有的值放在键值对立面就好了
      

  4.   

    目前的解决方案是,后台一个应用服务器,当做桌面服务器一直运行,坚挺端口A,web前段访问到相关页面时,web后端用socket和桌面服务器通信(假设端口b),桌面服务器再去找A要数据,数据回来后通过B传回去,web前段就能显示出来了。注意,这个过程浏览器是阻塞的,它请求数据阻塞到返回为止。对,就是这样一个过程。我之前考虑把桌面服务器集成到web后端,比如asp.NET里面的application里面常驻运行(桌面服务器管理着来自A的数据发送、接收),但是因为只能在page类里面才可以访问application,所以利用application找到A的核心对象发送没有问题,而通过端口A过来的数据收到以后,核心对象却不能找到当初请求的浏览器对象。我试过用.NET4里面的signalR,似乎也不满足我的需求,因为我十分依赖核心对象从A端口过来的数据,而它是一个被封装好的activex对象,它收到数据后找不到当初请求它的浏览器。也许我对signalR认识太肤浅。不过目前不打算继续研究它,就用我的方案进行,因为请求-接收数据的过程本身就要求严格的时序性,让浏览器阻塞也更加符合需求。
      

  5.   

    这个项目中断了一年,现在又回来了,不过现在我有了新的看法,且发现了最后一次方案的弊端:
    1、浏览器阻塞等待的用户体验很差,且很容易造成重复发送请求
    2、其实没有必要单独做一个后台服务器,虽然只有Page类才能访问Application,但我可以自己建一个全局结构去存储关键数据,不管是Page还是一般的对象都可以访问。之前会做一个单独后台服务器的决定,实在是太不了解Web了所以,现在的方案更简单了:
    1、去掉了后台单独服务器,将这部分功能集成到Web服务器中
    2、使用ajax技术来实现"推送",而不是让浏览器阻塞等待返回结果