百度空间 | 百度首页 
 
查看文章
 
网络和通信
2009年11月08日 星期日 18:55

Silverlight 2中有三种网络通信机制WCF、通过WebClientHttpWebRequest的直接Http通信、使用Sockets的相对原生态的通信。在Silverlight 3中增加了本地通信模型。

    

使用WCF最基本的必须了解ABCAddress,Binging,Contract),在Windows7下自动生成的web.config与其他OS略有不同。

   

WebClient可方便的用来下载zip资源等,利用GET操作可下载StringStream,通过UploadStringAsync方法可以支持POST操作。

     

如果想利用HTTP完成更复杂的操作或请求,比如涉及权限,cookies,安全等,则需要使用HttpWebRequestHttpWebRequestWebRequest的子类,支持HTTPHTTPS协议,并受益于浏览器的能力。

   

HTTP协议也有一些不足,它是建立在TCP之上相对较为高级别的标准,因此不可能比raw connection性能更高HTTP多用于从服务端获取数据,而服务端想从客户端得到反馈则相对较难,因此不太适合需要实时通信的应用程序。这时就需要Sockets出马,Sockets所需的跨域策略文件略有不同,在Silverlight中也有诸多限制,比如端口号等。

    

        

本地通信:通过本地消息传递,可以在单个计算机上运行的多个Silverlight应用程序之间通信。应用场景比如同在一个页面上的多个Silverlight应用程序交互,创建具有跨越侧栏广告的动画效果的基于 Silverlight 的横幅广告,并且使用本地消息传递来协调过渡。该特性尤其适用OOB(浏览器外)应用程序。和Sockets不同的是,本地连接消息是单向的,fire-and-forget式的,消息发送者不知道消息是否被接收,除非是消息接收者发回确认信息。

         

ASP.NET网站中构建Web Service有以下几种方式:generic handler(后缀.ashx),ASP.NET Web Service(后缀.asmx),启用了Silverlight功能的WCF服务等。

    

Web Service返回的数据常有以下几种格式:XMLJSONRSS/AtomSOAP消息。处理这些不同的数据可能用到的相关技术有LINQ、正则表达式、序列化等。

   

此外,还需要注意的就是跨域问题,另外篇章再总结。


类别:Silverlight | 添加到搜藏 | 浏览() | 评论 (3)
 
最近读者:
 
网友评论:
1
2009年11月08日 星期日 18:56 | 回复
 
2
2009年11月10日 星期二 09:42 | 回复
能再结合实例说明下最好 纯理论能生动起来最好
 
3
2009年11月10日 星期二 10:54 | 回复
回复gis理想:学习笔记,默认阅读对象是对各个细节都有了解,对各种方式都使用过的读者,呵呵。
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu