“.NET研究”Silverlight 应用整合

  Silverlight与企业信息化

  在企业应用系统中,企业客户不在满足于呆板的Portal、树形结构、数据堆积的表格和满屏的文字描述。企业客户越来越倡导用户体验,Silverlight迎合了这种需求,实现了炫目的体验和丰富交互的应用,更重要的是Silverlight更适合企业应用系统的开发,依靠.Net平台,使用C#高级语言代替JavaScript脚本语言,实现了强大的客户端计算能力、支持多线程,丰富的控件、特效与动画,更可控的浏览器适应性,更安全的沙箱模式,客户端嵌入式数据库等。

  现在企业应用开发有两大阵营,一个是Java,另一个是.NET平台,难道Silverlight只能服务于后者吗?答案:不是。Silverlight定位于,可以快速部署到浏览器中的富互联网应用。Silverlight将要覆盖的领域是“客户端应用程序”和“媒体体验”。Silverlight是为连接到主机的网页内容而设计的,其特点是不但用户可深入地参与到交互中,而且应用还可在任何浏览器中运行。

图1 Silverlight各组件之间的关系

  “Silverlight应用”运行于浏览器中的“XAP文件”本身需要使用Microsoft Visual Studio 工具开发,就像“Flash应用”运行于浏览器中的“SWF文件”需要使用AdobeFlex工具开发一样。“Silverlight应用”可以和“Flash应用”一样嵌入到已有的网页中运行,“应用本身”需要数据时再去向后端服务器通讯,例如:“Flash应用”经常使用的从服务器下载“XML数据文件”后再显示于应用中的通讯方案。

  Silverlight应用通信原型

  Silverlight内嵌在HTML网页中,自然就包含在web浏览器的沙箱内。非常重要的一点是,在Silverlight运行的客户端机器并不需要安装.NET。运行Silverlight应用所需的必要资源全都包含在Silverlight浏览器插件中,所有互操作场景都建立在Silverlight之上。Silverlight应用的最终生的XAP文件,在被用户下载到本地后所有上海企业网站制作通信任务都是由前端的Silverlight应用通过网络访问后端Server的数据,以回传绑定显示在UI之上。Silverlight支持广泛的网络能力如:REST、SOAP、POX,RSS及标准HTTP服务等网络技术的调用,这部分对前端的Silverlight特别重要。下面所示是通信原型:

图2 Silverlight通信原型

  前端的Silverlight通过网络访问后端服务器的数据,并以在UI之上绑定显示回传数据的过程分为以下步骤:

  1. 内嵌在HTML网页中Silverlight应用发起请求或回传数据。
  2. 客户端内存中的“请求”或“数据”被序列化为可传输的字符串,并发送到服务器。
  3. 服务器接收并反序列化传输的字符串为请求或数据到服务端内存中处理。

  Silverlight通信技术

  Silverlight提供了丰富的与服务器端通信能力,目前Silverlight支持TCP、UDP、Socket等网络协议,以及HttpHandler、WebServices等多种应用层协议,还可以通过WCF RIA Service数据“透明”访问方式(通过向客户端公开数据访问层,屏蔽了通信层手工编码)快速实现实体通信。下面所示为可用于Silverlight的通信技术:

图3 用于Silverlight的通信技术

  Silverlight 运行时支持若干将网络应用程序与远程主机进行连接的主要方法:


序号


命名空间

上海闵行企业网站设计与制作"top">


用途


1


System.Net


WebClient

HTTP


这些类使用 HTTP 或 HTTPS 协议来进行网络通信


2


System.Net.Sockets

上海徐汇企业网站设计与制作idth="199" valign="top">

套接字


这些类提供一个低级别的套接字接口,该接口可用于更常规的使用单播的网络通信


3


System.Net.Sockets


UdpAnySourceMulticastClient UdpSingleSourceMulticastClient


这些类为 UDP 多路广播客户端提供支持

  Silverlight 运行时直接支持的连接方法,都可用于非.Net平台的技术平台如:JAVA和PHP等。

  数据或命令要正常交换要具备两个必要条件:渠道和通用语义。这里的渠道就是与远程主机的连接方法,这里的通用语义指的就是:“序列化与反序列化”。当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以可保持或传输的格式在网络上传送。把对象转换为可保持或传输的格式的过程称为对象的序列化。把可保持或传输的格式恢复为对象的过程称为对象的反序列化。


序号


类型


通途

上海闵行企业网站制作


1


二进制序列化


保持类型保真度,这对于在应用程序的不同调用之间保留对象的状态很有用例如,通过将对象序列化到剪贴板,可在不同的应用程序之间共享对象。


2


XML 序列化

上海徐汇企业网站制作


不保持类型保真度,当您要提供或使用数据而不限制使用该数据的应用程序时。


3


JSON序列化


不保持类型保真度,一种通用的数据格式,有着存储体积小的特点。

  Silverlight应用整合

  在原有应用集成方面,如果服务器端使用.Net平台,那么Silverlight客户端程序可以重用原有通信方式,而不必对服务器端程序有较大改上海网站建设动,如果服务器端使用Java平台,Silverlight也提供标准WebServices、Http、Socket多种交互方式进行通信,服务器端只要进行简单的服务封装就可以实现与Silverlight客户端的数据通信。因此,Silverlight基于.Net提供了快速与服务器端程序集成的能力。事实上,在笔者所开发的项目中,已经实现了Silverlight客户端与.Net、J2EE(通过REST接口)、Tuxedo(通过SALT接口)的数据通信。

图4 原有应用集成

  因此,Silverlight基于.Net提供了快速与服务器端语言集成的能力。事实上,在笔者所开发的项目中,已经实现了Silverlight客户端与.Net、J2EE(通过REST接口)、Tuxedo(通过SALT接口)的数据连通性。

  Silverlight 以前对于支持网络的插件的设计将连接性限制到主机或源站点。这意味着,Web 应用程序只能向后与其部署服务器通信,因此,网络应用程序可以连接到从中下载它们的主机。Silverlight 2 和更高版本包括对跨域连接的支持,这使得应用程序可以访问并非源站点的其他位置中的资源。这是一个重要的功能,它使 Silverlight 应用程序可以使用 Web 上的现有服务。

  结束语

  企业客户越来越认识到RIA技术对于企业应用的重要性,而Silverlight就是实现企业应用RIA重要的选择之一。Silverlight 定位于“客户端应用程序”,无论是互联网应用中,还是企业应用中,都可以为使用者带来的愉悦感和价值感。在Silverlight的数据与通信的中,除了通信渠道与序列化的问题外,最值得注意的两点:异步模式与同步模式的区别、不同开发平台的数据类型匹配问题。

时间: 2024-09-17 15:10:15

“.NET研究”Silverlight 应用整合的相关文章

一起谈.NET技术,Silverlight 应用整合

Silverlight与企业信息化 在企业应用系统中,企业客户不在满足于呆板的Portal.树形结构.数据堆积的表格和满屏的文字描述.企业客户越来越倡导用户体验,Silverlight迎合了这种需求,实现了炫目的体验和丰富交互的应用,更重要的是Silverlight更适合企业应用系统的开发,依靠.Net平台,使用C#高级语言代替JavaScript脚本语言,实现了强大的客户端计算能力.支持多线程,丰富的控件.特效与动画,更可控的浏览器适应性,更安全的沙箱模式,客户端嵌入式数据库等. 现在企业应用

Silverlight 应“.NET技术”用整合

Silverlight与企业信息化 在企业应用系统中,企业客户不在满足于呆板的Portal.树形结构.数据堆积的表格和满屏的文字描述.企业客户越来越倡导用户体验,Silverlight迎合了这种需求,实现了炫目的体验和丰富交互的应用,更重要的是Silverlight更适合企业应用系统的开发,依靠.Net平台,使用C#高级语言代替JavaScript脚本语言,实现了强大的客户端计算能力.支持多线程,丰富的控件.特效与动画,更可控的浏览器适应性,更安全的沙箱模式,客户端嵌入式数据库等. 现在企业应用

深入理解MVVM模式中Silverlight的Trigger、Action和Behavior及Silverlight的继承机制

原文:深入理解MVVM模式中Silverlight的Trigger.Action和Behavior及Silverlight的继承机制 接触Silverlight已经有两三个月了,开始一直感觉他和Winform很相似,拖拖控件就行了,所以一直把经历放在了研究后台和服务器交互和性能优化上面,很少去仔细研究Silverlight的页面.前几天,公司突然让修改一个Winform的项目,再回过头来看Winform,有种"不堪回首"的感觉. 十一长假即将来临,在这里先祝大家假期快乐.今天难得有空,

基因突变研究,释放PB级大数据的能量

15年前,人们视其为里程碑式但高不可攀的成就:10年前,这是一个有趣但是昂贵的研究工具:现在,日渐低廉的价格,迅猛提升的精确度以及正在稳定进步基础科学体系将基因组测序带入常规临床护理的实践前沿. 越来越多的机构正在开展基因组研究以鉴别出导致稀有疾病的基因突变."我们正在寻找的基因突变的发生概率正在提高",Russ Altman说道,他是斯坦福医药学院的一名生物信息教授."在一些医疗中心,百分之50的案例都是我们研究的这些病种". 越来越多的机构正在开展基因组研究以鉴

《网络零售整合营销》——第一章导论

第一章 http://www.aliyun.com/zixun/aggregation/7820.html">网络零售整合营销导论 第一节 网络零售整合营销及研究对象 一.网络零售整合营销研究对象 (一)学科研究对象 1.网络零售整合营销定义 网络零售整合营销是网络零售交易供方网商使用各种基于互联网的工具.方式.方法.手段.渠道.技巧等向需方网购者销售有形或无形网货,以实现向网货款快速而持久转换的决策活动与策略性行为. 2.网络零售整合营销内涵 (1)开展营销活动的主体是网商: (2)营销

2013雅思年度报告:大数据时代的IELTS研究

随着留学[微博]产业的发展,每年赴英联邦国家和赴美加留学的人数都在迅速增加,语言测评作为考生出国留学的必经之路,是整个留学产业链中至关重要的一环.目前,全世界每年有超过200 万的考生参加雅思[微博]考试,这个数量还在逐年递增,使得雅思考试成为留学.海外就职和英语能力测评考试的领跑者.作为拥有20 年培训经验及国内培训雅思学员最多的机构,新东方通过对考试的分析,例如对考试设计原理,语料来源.考试趋势进行深入探究,以及对考生群体的研究,例如对考生的年龄及地域特征.学习习惯等方面信息的分析,为整个行

全国有线网络整合拉开大幕

核心提示:国家网络公司将在今年年底前挂牌,最快到2012年底实现全部整合.在国家网络公司加快组建的同时,为了在整合中占据资产高地,各地http://www.aliyun.com/zixun/aggregation/38631.html">有线网络公司纷纷加快上市步伐,但这却给国家网络公司的组建增加了难度. 分散的有线网络全国整合终于拉开大幕. 8月10日,本报记者从广电总局有关人士处获悉,广电总局成立的国家级有线电视网络公司筹备组8月初正式成立.国家有线网络公司的筹备组的组长将由广电总局副

Silverlight自定义数据绑定控件应该如何处理IEditableObject和IEditableCollectionView对象

最近在一直研究Silverlight下的数据绑定控件,发现有这样两个接口IEditableObject 和IEditableCollectionView,记录一下结论,欢迎交流指正. 本文会重点介绍在构建Silverlight自定义数据绑定控件的过程中,我们会对数据源进行操作,那么就会碰到上述两个接口,如何正确的处理它们.   IEditableObject 这个概念早在.Net 1.0的时候就提出了,但是我一直没有关注过这个东东. What is IEditableObject? IEdita

Silverlight 3 创建一个简单的Behavior

Silverlight 3 创建一个简单的Behavior 最近一直在研究Silverlight 3,并同时用3的新特性来做一些演练,期间学到了不少新东西该倒了总结一下的时候了. 在开发一个demo的过程中我采用了MVVM的开发模式,这个模式能很方便的直接使用blend来做数据的绑定,但是对一些Event.事件的触发来实现相对应的动画效果就比较复杂,刚开始一直想用数据绑定的方式来绑定Event,最终发现绑定按钮的点击事件比较方便,但是绑定别的比如MouseEnter.MouseMove等的事件就