日期:2014-05-20  浏览次数:20468 次

100 分! 咨询一下:如果单纯用 asp.net 技术,能实现OA 系统常用的用户在线的即时感应,以及即时通讯的功能吗?

我们单位用的是   合强的办公自动化OA   ,这个OA   也是完全基于   BS   结构的,功能是很强大,我有个疑问,   asp.net   能实现这个功能吗?

请各位有经验的高手给我指点一下经验!不胜感激!

------解决方案--------------------
可以.主要原理就是利用xmlhttp不断刷新.
------解决方案--------------------
當然可以了。
樓主所用的合強辦公OA是PHP寫的吧,在網上能見到的好多都是PHP的。
我們公司正在開發自己的OA,用的就是ASP.NET。

能实现OA 系统常用的用户在线的即时感应,以及即时通讯的功能吗?
//我部門我們結合ajax實現,效果非常理想。

------解决方案--------------------
你说的“中间件开发”、“用这种方法,我感觉是最可行的,也是最科学的”也是含糊不清的。

等你提出具体的问题来也许才能回答。

刷新当前操作页面肯定是很过分的,与服务器通讯仅需要局部刷新或者访问web服务。
------解决方案--------------------
如果樓主真的想做即時通訊,只能用C/S模式來做,B/S模式是做不出即時的。B/S最常用的方式也就是通過定時局布刷新頁面,感知變化。
------解决方案--------------------
中间件、WinForm等说法很含糊,让人摸不着头脑,如果把问题说得具体一些,说出哪些地方你觉得它可以做而asp.net不能做来,这才能获得直接的回答。

不论什么通讯方式,只要所面临的问题从局域网转向internet,并且终端往往是移动、在网关后边的,那么他们的技术所面临的约束都是一样的——客户端访问服务器而服务器无法访问客户端。

有些人可能认为 p2p 可以达到,所以asp.net不能达到。其实思考方向根本不是这样的。asp.net上可以嵌入ActiveX、JavaApplet,甚至通过Flash、Adobe播放器等早已经被许多人安装在自己机器上的组建来传播病毒式的客户端程序,从而web应用从技术上说远比c/s应用更容易在internet所可以到达任何角落内传染、部署这些插件。

但是在internet上大家都注重最基本的安全。公司里的网管如果比较尽责,会在网关上追查有谁的机器用了p2p软件,谁的流量异常。大多数个人会比较注重避免下载不十分了解和相信的插件。

因此使用asp.net并不是因为我们技术上做不到c/s那种东西,而是因为我们想让这些谨慎的internet用户在安全的环境下尽量多用一些服务。使用什么东西开发软件是技术选择问题,程序员应该了解c/s、b/s下面一层的知识,如果因为不会开发c/s而去开发asp.net,这就没有多少技术了。
------解决方案--------------------
我做过javascript +ASP.net即使通讯(无刷新,可显示新消息,和用户是否在线), 不过, 浏览器的

兼容问题非常难.

至今在FireFox里还没有办法使用.没有时间去改, 作用不大! 呵呵, 现在人家都是用QQ更方便.

QQ114587904我可以给你示例
------解决方案--------------------
A.
如 sp1234 所述,内网转外网的系统部署,多数 host 被限制无法访问 client,
并且 HTTP 本身特点,客户端需要数据,只有自己去 PULL(拉),服务器端没有办法 PUSH(推)给你,

因此,还是只有刷新。

通常 B/S 系统难以实现【软】实时,且不说【硬】实时了,
并且也不需要!
有多少【实际有用】的功能会需要有这样的实时?
大多是【鸡肋】功能吧!

真的有那么高实时要求,比如 10 s 内(这已经很低了吧),单纯的靠【刷新机制】(就是每10s刷一次,考虑网络传输,系统延迟等因素,那么实际刷新频率还得更低)

那你刷刷看,用户量一大,要么服务器跑不过来,要么你就得花银子升级硬件了

当然,对于 OA 似乎特殊了点,

1。
首先,一般企业 OA,在线量并不大,请求数自然也就相对少了,
第二,假如内部网,就更有可为之处了
第三,假如广域网,那么就得考虑,是否请求频率得低点了

2。
虽然,马马虎虎 【刷新机制】可以完成我们的【鸡肋】功能,但是治不了本,【实时】对于 HTTP 来说,本来就是苛刻的要求。

因此,考虑部署个插件吧。对于 OA ,企业内部使用,对于部署插件不成问题

若实现类似IM的功能,要是考虑上P2P技术,那就更优了,完全可以将你的这个产品独立分发了

看过,用友致远OA,某些功能也是需要插件,而起不是一个,很多个,但是其在线统计、短消息模块似乎,还是 http 刷新

最后,有个疑问,OA 系统对用户在线即时感应要求如此之高?Boss 要监视我们迈?那还不如装个摄像头 ^_^


B.
目前,对于分发可嵌入IE的 【WinForm】 来说,由于需要客户端装那 【20+M】 的 .net fx,因此没有太大市场,

现在,【Windows】 平台上插件,还是 【ActiveX】吧


C.
目前,【AJAX】 技术对于跨【主流】浏览器来说,已经不是什么问题了。

你非要用 IE 4 NS6- 之类那就没法了


说到底,具体的问题还是得具体分析,不一样的环境采取不同的策略,
并不是说,肯定或者否定的问题,而是一个可行性的问题,一个需要平衡利弊的问题,

个人拙见 ^_^