900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Windows Phone访问web service和WCF服务

Windows Phone访问web service和WCF服务

时间:2021-05-07 16:58:51

相关推荐

Windows Phone访问web service和WCF服务

Windows phone也像传统的.net应用一样,可以方便的调用web service和WCF服务。

首先创建一个web service服务,因为.NET Framework 4的版本没有Web Service模板,所以选择.NET Framework 3.5来创建“ Web服务应用程序”:

在Service.cs中的Service的类中写如下方法:

[WebMethod] publicbyte[]GetCity() { System.IO.MemoryStreamm=newSystem.IO.MemoryStream(); System.Drawing.Bitmapbp=newSystem.Drawing.Bitmap(Server.MapPath("~")+@"/a.jpg"); bp.Save(m,System.Drawing.Imaging.ImageFormat.Jpeg); returnm.GetBuffer(); }

.NET Framework 4下创建“WCF服务应用程序”:

在IService1.cs接口中添加如下方法:

[OperationContract] byte[]GetCity();

在子类Service1中添加如下方法:

publicbyte[]GetCity() { System.IO.MemoryStreamm=newSystem.IO.MemoryStream(); System.Drawing.Bitmapbp=newSystem.Drawing.Bitmap(@"C:\Users\GSW\Documents\VisualStudio\Projects\WebSite4\WcfService1\a.jpg"); bp.Save(m,System.Drawing.Imaging.ImageFormat.Jpeg); returnm.GetBuffer(); }

创建Windows Phone, “添加服务引用”,引入web service或wcf服务,引用服务默认名称为“ServiceReference1”,的页面后台添加代码如下:

//定义服务引用对象 ServiceReference1.Service1Clientserviceclient; publicMainPage() { InitializeComponent(); serviceclient=newServiceReference1.Service1Client(); //为异常完成事件添加回调方法 serviceclient.GetCityCompleted+=newEventHandler<ServiceReference1.GetCityCompletedEventArgs>(serviceclientc_GetCityCompleted); } privatevoidbutton1_Click(objectsender,RoutedEventArgse) { //调用异常方法 serviceclient.GetCityAsync(); } voidserviceclient_GetCityCompleted(objectsender,ServiceReference1.GetCityCompletedEventArgse) { //回调方法中完成图片的加载显示 byte[]buf=e.Result; System.IO.MemoryStreamstream=newSystem.IO.MemoryStream(buf); BitmapImageimg=newBitmapImage(); img.SetSource(stream); p_w_picpath1.Source=img; }

不管是web service还是wcf服务,Windows Phone中使用方法都是一至的,采用异步调用方式,这样用户体验要好一些。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。