Silverlight杂记之HTTP通信WebClient介绍

Silverlight杂记之HTTP通信WebClient介绍,第1张

概述Silverlight的微型.NET框架集成了具有通信功能的类,这些类都封装在System.Net命名空间中。但是由于一些原因,允许的通信协议只有HTTP/HTTPS一种,我们常见的FTP,FILE等协议并未得到支持。        System.Net命名空间中有一个特殊的WebClient类,该类为Silverlight浏览器插件提供了一整套HTTP客户端功能。使用WebClient实现按需部 Silverlight的微型.NET框架集成了具有通信功能的类,这些类都封装在System.Net命名空间中。但是由于一些原因,允许的通信协议只有http/httpS一种,我们常见的FTPfile等协议并未得到支持。

       System.Net命名空间中有一个特殊的WebClIEnt类,该类为Silverlight浏览器插件提供了一整套http客户端功能。使用WebClIEnt实现按需部署来优化下载过程,让我们在第一时间不需要呈现的元素等到用户进行请求时再发送。该类提供了从URI标识的任何本地,IntranetInternet资源发送和接收数据的公共方法。

       通过WebClIEnt,我们可以使应用程序具有初始化请求,监视请求进程和获取服务器端资源的功能,这样就便于在无需刷新整个宿主HTML页面情况下就能得到异步请求的XAML文档,附加程序集,媒体元素等应用程序数据,并在我们当前UI中显示出来。

       我们除了下载指定的数据,还可以使用WebClIEnt把本地资源以流的形式写入服务器。在表面上看,WebClIEnt和文档对象模型中的XMLhttpRequest对象非常相似。

下载相关方法

方法

描述

DownloadStringAsync

在不阻止线程调用的情况下,使用http Get命令,以@H_419_147@字符串的形式从指定Uri异步下载资源。@H_419_147@注意:在下载 *** 作完成之前不能对同一个WebClIEnt对象调用该方法。

OpenReadAsync

在不阻止线程调用的情况下,使用http Get命令,以@H_419_147@流的形式从资源异步返回数据。@H_419_147@注意:在下载 *** 作完成之前不能对同一个WebClIEnt对象调用该方法。

下载相关事件

事件

描述

DownloadProgressChanged

当异步下载 *** 作成功传输部分或全部数据时触发

DownloadStringChanged

当异步字符串下载 *** 作完成时触发

OpenReadCompleted

当异步资源读取 *** 作完成时触发

上传相关方法

方法

描述

UploadStringAsync

在不阻止线程调用的情况下,使用http POST命令向资源异步发送字符串。当字符串上传完成之后将自动触发UploadStringCompleted事件。

OpenWriteAsync

在不阻止线程调用的情况下,使用http POST命令获取用于向资源异步发送数据的可写流。如果关闭流,则在请求发送到Uri并获取响应之前,线程将被阻止,但是在流打开时,方法不会阻止线程。

上传相关事件

@H_323_419@ 当异步上传 *** 作成功传输部分或全部数据时触发

@H_323_419@ 当异步字符串上传 *** 作完成时触发

@H_323_419@ 当异步 *** 作打开向资源写入数据的流时触发

事件

描述

UploadProgressChanged

UploadStringChanged

OpenWriteCompleted

上传和下载方法都包含字符串和流两种资源访问方式,选择哪一种方法取决于如何使用资源。通常情况下,数据流更为通用。 总结

以上是内存溢出为你收集整理的Silverlight杂记之HTTP通信WebClient介绍全部内容,希望文章能够帮你解决Silverlight杂记之HTTP通信WebClient介绍所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1078474.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存