WEB开发网
开发学院图形图像Flash 在 Silverlight 中管理动态内容交付,第 1 部分 阅读

在 Silverlight 中管理动态内容交付,第 1 部分

 2009-02-05 11:54:37 来源:WEB开发网   
核心提示: 在编写 Silverlight 应用程序时,要记住届时需要用到但却未打包到应用程序的 XAP 中的所有资源都必须从服务器显式下载,在 Silverlight 中管理动态内容交付,第 1 部分(7),WebClient 类是可用来安排附加资源下载的主要 Silverlight 工具,它提供了

在编写 Silverlight 应用程序时,要记住届时需要用到但却未打包到应用程序的 XAP 中的所有资源都必须从服务器显式下载。WebClient 类是可用来安排附加资源下载的主要 Silverlight 工具。它提供了一些异步方法,可用于将数据发送到 Web 资源以及从 Web 资源接收数据。下面介绍它的工作原理:

WebClient wc = new WebClient();
wc.DownloadStringCompleted +=
   new DownloadStringCompletedEventHandler(callback);
wc.DownloadStringAsync(address);

DownloadStringAsync 方法操控 HTTP GET 并捕获 URL 响应作为一个字符串。此字符串由相关联的回调接收,如下所示:

void callback(object sender, DownloadStringCompletedEventArgs e)
{
 if (e.Error != null)
   return;
 string response = e.Result;
...
}

稍后您会看到,此方法非常适合于下载没有附加任何代码隐藏的纯 XAML。要以编程方式下载二进制数据(如 XAP 程序包),您需要用到流并需要使用一种略微不同的方法。这时 WebClient 类仍很有帮助,因为它在 OpenReadAsync 中提供了一种非常适合的方法:

WebClient wc = new WebClient();
wc.OpenReadCompleted +=
   new OpenReadCompletedEventHandler(callback);
wc.OpenReadAsync(address);

关联回调的结构与上一示例中的完全相同。最后,使用 DownloadStringAsync 方法获取一个简单的字符串;使用 OpenReadAsync 方法获取任意数据的流。无论您决定下载字符串还是流,都属于个人喜好问题,在本质上取决于您打算如何使用接收到的数据。

另外还要注意,WebClient 提供了一对可以向远程 URL 执行写入操作的方法:UploadStringAsync(用于发布字符串)和 OpenWriteAsync(使用流将任意数据上载到 URL)。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:Silverlight 管理 动态

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接