您的位置:知识库 » .NET技术

一步一步学Silverlight :数据与通信之WCF

作者: TerryLee  来源: 博客园  发布时间: 2008-10-09 11:45  阅读: 10908 次  推荐: 0   原文链接   [收藏]  

在Silverlight项目中添加服务引用,输入地址http://localhost:52424/Blog.svc,输入命名空间BlogService。

TerryLee_Silverlight2_0066

添加完成后,我们可以在对象浏览器中浏览一下生成的客户端对象:

TerryLee_Silverlight2_0067

当然大家也可以手工去编写客户端的代码,请参考WCF的相关内容,这里不再赘述。下面编写调用服务并获取数据,这里仍然是采用异步模式,由于在WCF服务的配置中我们采取了BasicHttpBinding,客户端也要采用BasicHttpBinding。我们需要注册GetPostsCompleted事件处理方法,以便完成后回调,同时调用GetPostsAsync()方法获取数据。完整的代码如下所示:

public partial class Page : UserControl
{
    public Page()
    {
        InitializeComponent();
    }

    private void UserControl_Loaded(object sender, RoutedEventArgs e)
    {
        Binding binding = new BasicHttpBinding();
        EndpointAddress endPoint = new EndpointAddress(
                "http://localhost:52424/Blog.svc");

        BlogClient client = new BlogClient(binding, endPoint);
        client.GetPostsCompleted += new EventHandler<GetPostsCompletedEventArgs>(client_GetPostsCompleted);
        client.GetPostsAsync();
    }

    void client_GetPostsCompleted(object sender, GetPostsCompletedEventArgs e)
    {
        if (e.Error == null)
        {
            Posts.ItemsSource = e.Result;
        }
    }
}

至此,一个完整的在Silverlight 2中调用WCF的示例就完成了,运行后效果如下:

TerryLee_Silverlight2_0065 

结束语

本文简单演示了在Silverlight 2中如何与WCF进行通信,你可以从这里下载示例代码。

0
0

.NET技术热门文章

    .NET技术最新文章

      最新新闻

        热门新闻