.Net2.0 --Winform结合WebBrowser控件和Socket老技术来实现另类Push~
原文:.Net2.0 --Winform结合WebBrowser控件和Socket老技术来实现另类Push~
目前的企业级开发比较流行的是Web2.0技术,但是由于Web技术基于请求--响应的交互模式,使很多效果无法有效的呈现。
比如在Push技术上面,很多人感到头痛~ 如何让服务器主动请求Browser端~ 这个技术很多技术普通的开发人员都感到很难解决(包括我~呵呵)
其实要在企业级开发中实现Push技术,难度是有,但是我们要懂得变换方式。 如果技术上一直卡在Push技术的研究上,很浪费时间。下面我讲讲我做的一个"伪Push” :
一:实现Form与页面的交互
HtmlElement btnElement = htmlDoc.All["btnClose"];//在文档中找到需要和form交互的元素
if (btnElement != null)
{
btnElement.Click += new HtmlElementEventHandler(HtmlBtnClose_Click);//给这个元素Click事件(元素为Button)加上EventHandler(委托方法名)
}
我这里给出的是简单的示例 这个示例详细版本来源为博客园一位仁兄~ 感谢~~
二:实现伪Push
我们现在已经能够实现form和页面进行交互了~ 那怎么实现Push呢?
其实我使用form承载页面的原因就是在这里,可能有人会觉得我麻烦~ 为什么不用Ajax动态刷数据呢?这样是可以实现无刷新得到实时的新数据,但是不停的刷服务器和通讯上面都是会冒较大的风险,我说过我们做的是企业级开发,稳定性和安全性都应该考虑到,所以我选择使用form承载web页面,这样的话,一般业务上的工作流转和业务操作都可以用先进的web技术来呈现和执行,另外实时取得数据(停留在某页面上,不用刷新就能得到服务端主动发过来的新数据)在web上还不成熟,只能依靠ajax动态主动请求服务器来实现所谓的Push推进;这样显然不如用老技术:Socket好用~
到这里大家也该明白我的思路了。 就是使用Socket技术进行信息交互,实现服务器指定某客户端去进行操作,然后通过form和页面的事件交互技巧来实现一个Push效果~
第一次发技术文章,这个东西我是昨天想到的~ 以前一直没用过,通过在本社区里查找资料,得到一些技术支持。自己也做过实验,证明了这中想法的可行性~ 如果各位有什么看法的话 留言给我~
.Net2.0 --Winform结合WebBrowser控件和Socket老技术来实现另类Push~的更多相关文章
- winform中WebBrowser控件执行脚本
在实际应用中我们可能需要WebBrowser控件主动执行我们需要的脚本,执行脚本现在有两种方法. 1.WebBrowser控件加载脚本,简单方便,适用于简短的脚本,无法执行复杂操作. webBrows ...
- sp.net2.0中的新增控件BulletedList的一些高级用法
asp.net2.0新增了一个BulletedList控件,通过它可以以列表形式显示数据,而不必再用Repeater,Datalist等实现相同的效果.今天做程序的时候正好用到了这个控件,就把它的一些 ...
- VC6.0 MFC中WebBrowser控件禁止新窗口弹出的解决办法
http://blog.csdn.net/gnorth/article/details/7258293 分类: WebBrowser MFC 禁止新窗口2012-02-14 15:25 1787人阅读 ...
- 浏览器自动化的一些体会5 webBrowser控件之winform和webBrowser的交互
从winform访问webBrowser,大致就是利用webBrowser提供的解析dom的方法以及用InvokeScript方法执行javascript.这个相对比较简单. 从webBrowser访 ...
- C++(MFC)中WebBrowser去除3D边框的方法(实现IDocHostUIHandler接口)控制 WebBrowser 控件的外观和行为
在 CSDN 上经常看到以下两个问题:1.在 MFC 应用程序中,如果创建了一个 WebBrowser 控件(包括 CHtmlView 在内),如何可以把该控件的三维边框禁止掉?2.在 MFC 应用程 ...
- WPF中禁止WebBrowser控件打开新窗口
一.针对纯WPF的WebBrowser控件: <summary> Suppress Script Errors In WPF WebBrowser </summary> pub ...
- 【WPF】监听WPF的WebBrowser控件弹出新窗口的事件
原文:[WPF]监听WPF的WebBrowser控件弹出新窗口的事件 WPF中自带一个WebBrowser控件,当我们使用它打开一个网页,例如百度,然后点击它其中的链接时,如果这个链接是会弹出一个新窗 ...
- Webbrowser控件判断网页加载完毕的简单方法
一般情况下,当ReadyState属性变成READYSTATE_COMPLETE时,Webbrowser控件会通过触发DocumentCompleted事件来指示网页加载完毕.但当加载的网页包含fra ...
- C# Winform WebBrowser控件
C# WinForm WebBrowser 1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时 ...
随机推荐
- hdu2852--KiKi's K-Number(段树,求第一k的数量)
KiKi's K-Number Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- ext Window点击右上角的关闭(Xbutton)加入监控事件
使用场景:关闭window的时候添加监听事件. 正确的使用方式: addwin = new Ext.Window({ title : '新增', closable : true, width : 50 ...
- Apple Watch开发了一些细节和总结
本文旨在总结最近Watch在发展中遇到的问题和细节 1.左右Watch真机调试问题 一般的情况下,你为IOS主应用创建了一个extention,比方说Today Extension .Xcode都会自 ...
- RH133读书笔记(8)-Lab 8 Manage Network Settings
Lab 8 Manage Network Settings Goal: To build skills needed to manually configure networking Estimate ...
- Unity2D实现贴图凹凸感并接受实时光照效果
先看终于效果: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...
- NUnit3 Test Adapter vs2015
NUnit的安装 前言:NUnit是什么? NUnit 是一个单元测试框架,专门针对于.NET来写的.NUnit是xUnit家族种的第4个主打产品,完全由C#语言来编写,并且编写时充分利用了许多.NE ...
- MEF初体验之六:导出和元素据
在导出声明这一节中解释了部件导出服务和值的基础知识.在某些情况下,出于多种原因,关联与导出相关的信息是有必要的.通常,它被用来解释一个指定的普通契约实现的能力.这对于允许导入约束满足它的导出,或者导入 ...
- 一张图让你看清Java集合类(Java集合类的总结)
如今关于Java集合类的文章非常多,可是我近期看到一个非常有意思图片,基本上把Java集合的整体框架都给展现出来了.非常直观. watermark/2/text/aHR0cDovL2Jsb2cuY3N ...
- MVC — 初步理解IIS工作流程
声明:本文只是自己的总结和积累.IIS7.x 目录 IIS流程及组成部分 ASP.NET流程及组成部分 IIS与ASP.NET MVC 一.IIS流程及组成部分 1.Http.SYS:负责监听HTT ...
- opengl
扳回一球
本文介绍了使用两种方法opengl画一个球体,一个是一个球形点位置计算,然后绘制出,还有一个glut套件自带功能. 一.直接绘制法 直接贴代码,解释都写在凝视里了.绘制时先移动好坐标系.然后调用这方法 ...