拼吾爱程序人生

首页 » .Net编程 » Silverlight » Silverlight 2应用Web Service两例
cobra - 2008-6-20 16:10:00
文/Terrylee  出处/博客园

概述

我们知道,在Silverlight 2中提供了丰富的网络通信API,包括支持SOAP服务、REST服务、基于HTTP通信、Socket通信等。本文我将通过几个示例来演示如何在Silverlight 2中应用Web Service实现文件上传和电子邮件发送。

使用Web Service上传文件

我将通过一个示例来展示如何使用Web Service向服务器上传文件,首先创建Silverlight项目,并在Web测试项目中添加一个ASP.NET Web Service文件。现在来实现相关的WebMethod,在此方法中,将会接收两个参数:字节数组和文件扩展名,并会在服务器上创建文件,如下代码所示:

Code


添加一个简单的界面,供用户选择本地文件,我们将在按钮单击单击事件中调用Web Service,如下代码所示:

Code


调用Web Service上传文件,此处使用了OpenFileDialog对象弹出择窗口以便选择文件,此对象将选择的文件作为Stream返回,我们把Stream转换为一个字节数据传递给Web Service,如下代码所示:

Code


运行程序后,选择一个文件并上传,如下图所示:

 附件: 您所在的用户组无法下载或查看附件

至此,我们就完成了一个使用Web Service上传文件的示例。

使用Web Service发送电子邮件

众所周知,发送电子邮件需要使用SMTP协议,Silverlight中并不支持SMTP通信,但是我们可以借助于Web Service来发送电子邮件。本节将通过一个示例讲解这一内容,最终完成的效果如下图所示:

 附件: 您所在的用户组无法下载或查看附件


我们首先添加一个ASP.NET Web Service,并实现WebMethod,此方法将接受四个参数:发件人、收件人、邮件主题以及邮件内容,并使用SmtpClient对象发送邮件,关于SmtpClient的使用,大家可以参考MSDN,它位于System.Net.Mail命名空间下。如下代码所示:

Code


使用SmtpClient需要在Web.config文件中配置一下邮件服务器,这里使用Google的服务器,大家可以使用自己的Gmail帐号,如下代码所示

Code


在浏览器中测试Web Service,确保它可以正确的发送邮件。编写一个简单用户界面,如下代码所示:

Code


在Silverlight项目中添加Web Service引用,并编写代码来调用Web Service,相信大家都已经熟悉了该如何调用,如下代码所示:

Code


运行后输入相关信息,并发送邮件,如下图所示:

 附件: 您所在的用户组无法下载或查看附件

至此我们就完成一个在Silverlight中发送电子邮件的示例,大家如果有兴趣,还可以为其加上更加丰富的功能,如添加抄送人、密送人以及附件等。

 您可能对 [Silverlight] 的这些文章也感兴趣:

Silverlight 之模态对话框的通用模拟
Silverlight 2中的视觉状态管理 Part2
详解Silverlight 2中的独立存储(Isolated Storage)
在Silverlight中使用DynamicMethod(动态方法)
在Silverlight中如何访问外部xap文件中UserControl
自己定制silverlight在客户的的安装方式
Silverlight 2 正式版官方正式发布
SilverLight Topic---如何在Blend 2.0中设置ListBox.ItemTemplate?
一步一步学Silverlight 2系列(27):使用Brush进行填充
走近Silverlight
1
查看完整版本: Silverlight 2应用Web Service两例
Modify by pin5i DZNT_ExpandPackage 2.1.3237 2007-2008 pin5i.com
  Total Unique Visitors: