- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SilverLight学习笔记--使用WebClient实现通讯(一)(上传和下载字符串数据)
? 我们曾经学习过如何在Silverlight中用HttpWebRequest通讯。这里我们学习如何使用WebClient实现通讯。一、什么是WebClient类???1、基本知识??? WebClient类是Mircsoft在.NET框架下提供的向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法。通过这个类,大家可以在脱离浏览器的基础上模拟浏览器对互联网上的资源的访问和发送信息。它使人们使用起来更加简单方便,然而它也有先天不足的地方。那就是缺少对cookies/session的支持。??? WebClient类为Silverlight插件提供了一整套的HTTP客户端功能,可以下载应用程序数据,比如XAML内容,附加的程序集或者视频图片等媒体文件。WebClient可以根据程序须要即时下载内容,可以异步呈现和使用下载的内容,而不是随HTML页面一起下载。??? WebClient类提供了发起请求、监视请求的进度以及检索下载内容、上传数据到指定资源等功能。在Silverlight 2中,只能使用WebClient发起异步的请求,如开发一个视频播放应用程序,在应用程序加载时,选择开始请求每一部影片,使其加载到浏览器缓存中,这样可以避免缓冲延迟。?? 由于WebClient请求都是异步的,使用的是基于异步事件编程模型,大部分交互操作都是依靠事件处理来完成的,通常须要定义如下一个或者多个事件处理函数。???2、相关方法将数据上载到资源的 WebClient 方法OpenWriteAsync:?检索?Stream,它在不阻止调用线程的情况下以异步方式将数据发送到资源。UploadStringAsync:?在不阻止调用线程的情况下,将?String?发送到资源。从资源下载数据的 WebClient 方法DownloadStringAsync:?在不阻止调用线程的情况下,从资源下载?String。OpenReadAsync?:?在不阻止调用线程的情况下,以异步方式从资源返回数据。您可以使用 CancelAsync 方法取消尚未完成的异步操作。?3、两种工作方式:???A、以字符串形式下载和上传数据? 使用WebClient可以以字符串形式下载数据,当请求一个指定地址的字符串时,调用DownloadStringAsync方法,操作完成后将触发DownloadStringCompleted事件,在该事件处理方法中能够接收到一个类型为DownloadStringCompletedEventArgs的参数,它的Result属性的类型为String,我们可以通过该属性来获得最终的字符串结果,它可以是一段普通的文本或一段XML文本等。???B、以流形式下载和上传数据? 使用WebClient同样可以以流形式下载数据,当请求下载的资源是一个流时,可调用OpenReadAsync方法,此操作完成后将触发OpenReadCompleted事件,在该事件处理方法中能够接收到一个类型为OpenReadCompletedEventArgs的参数,它的Result属性类型为Stream,使用此属性能够获取到最终的流结果。?二、示例如何实现通讯 (以字符串形式下载和上传数据)? ?新建Silverlight应用程序SLWebClient。如下图:????????????????????????编写界面布局,XAML如下:UserControl?x:Class=SLWebClient.Page????xmlns=/winfx/2006/xaml/presentation?????xmlns:x=/winfx/2006/xaml?????Width=400?Height=400????StackPanel?Height=400?Width=400?Orientation=Vertical????????StackPanel?Height=250?Width=400?Background=Bisque????????????TextBlock?Text=以字符串形式下载数据?TextAlignment=Center?FontSize=16?Foreground=Red/TextBlock????????????Button?x:Name=btnLoadCity?Content=加裁城市信息?Width=200?Click=btnLoadCity_Click/Button????????????Button?x:Name=btnLoadWeather?Content=加裁天气信息?Width=200?Click=btnLoadWeather_Click/Button????????????TextBlock?Text=信息加载如下..??TextAlig
您可能关注的文档
- PEP人教小学英语三年级上册教学设计方案ppt模版课件.doc
- PDCA循环在工厂管理中的应用7644579050.doc
- PDCA循环在工厂管理中的应用5436978021(必威体育精装版整理By阿拉蕾).doc
- PHOTOSHOP 滤镜全部参数讲解 中.doc
- PEP小学英语必备三年级上册教案ppt模版课件.doc
- ppt专业商务报告制作与演示培训(必威体育精装版整理By阿拉蕾).doc
- PPT_模板_范本_培训_教材_企业_报告_战略_城市蓝.ppt
- PUBLIC FINANCE_习题答案(HARVEY S. ROSEN ,SEVENTH EDITION)--SAMPLE_EXAMS.doc
- Project Portfolio Server 2007 用户指南.doc
- Report Lining new brand strategy(李宁新品牌战略报告):总结 计划 汇报 设计 可编辑.doc
文档评论(0)