Windows Phone 7 网络编程之调用WCF Service

简介:

一、WCF Service简介

WCF(Windows Communication Foundation)是Microsoft为构建面向服务的应用提供的分布式通信编程框架,使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。WCF是微软整合了微软分布式应用程序开发中的众多成熟技术,如Enterprise Sevices(COM+)、.Net Remoting、Web
Service(ASMX)、WSE和MSMQ消息队列。

通讯范围:可以跨进程、跨机器、跨子网、企业网乃至于Internet;

宿主:可以是ASP.NET(IIS或WAS),EXE,WPF,Windows Forms,NT Service,COM+;

通信协议:TCP,HTTP,跨进程以及自定义。


 

二、 创建WCF Service

下面演示一下如何搭建一个WCF服务,简单地输出一个字符串。

第一步:打开visual studio 2010创建一个WCF服务应用程序。

 

 

第二步:修改Service1.svc和IService1.cs文件。

创建好的项目默认的文件目录如下:

 

 

在Service1.svc中添加方法

public string HelloWCF() 

return "Hello WCF";

}

在IService1.cs中添加接口:

[OperationContract]
string HelloWCF();


 

第三步:创建一个网站的虚拟目录指向WCF的项目工程。

在控制面板中找到Internet信息管理器并打开,在Default Web Site节点下创建一个虚拟目录,命名为wcf,路径指向本例子的web应用程序的代码,并点击确定。

三、 调用WCF Service

第一步:在Windows Phone项目中添加WCF服务引用,生成代理。

引用成功后会产生一个ServiceReferences.ClientConfig文件,文件如下:

<configuration>

<system.serviceModel>

<bindings>

<basicHttpBinding>

<binding
name="BasicHttpBinding_IService1"
maxBufferSize="2147483647"

maxReceivedMessageSize="2147483647">

<security
mode="None" />

</binding>


</basicHttpBinding>

</bindings>
<client>

<!--http://localhost/wcf/Service1.svc是指WCF服务的地址--> 
<endpoint address="http://localhost/wcf/Service1.svc"
binding="basicHttpBinding" 
bindingConfiguration="BasicHttpBinding_IService1" contract="WCFService.IService1" 
name="BasicHttpBinding_IService1" /> 
</client> 
</system.serviceModel>

</configuration>

第二步:调用WCF服务。 
WCFDemo.WCFService.Service1Client proxy = new WCFService.Service1Client(); 
proxy.HelloWCFCompleted += new EventHandler<WCFService.HelloWCFCompletedEventArgs>(proxy_HelloWCFCompleted); 
proxy.HelloWCFAsync();


 


void proxy_HelloWCFCompleted(object sender,
WCFService.HelloWCFCompletedEventArgs e)

textBlock1.Text = e.Result.ToString(); 
}

XAML代码

<Grid x:Name="ContentPanel" Grid.Row="1"
Margin="12,0,12,0"> 
<TextBlock
Height="63" HorizontalAlignment="Left"
Margin="60,47,0,0" Name="textBlock1" Text=""
VerticalAlignment="Top" Width="249" /> 
</Grid>

运行效果:

 

 

本文转自linzheng 51CTO博客,原文链接:

http://blog.51cto.com/linzheng/1078592

相关文章
|
7月前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
210 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
10月前
|
监控 安全 网络协议
恶意软件无处逃!国内版“Manus”AiPy开发Windows沙箱工具,进程行为+网络传输层级监控! 头像 豪气的
NImplant.exe 是一款后渗透测试工具,可实现远程管理与持久化控制。其优点包括无文件技术、加密通信和插件扩展,但也存在被检测风险及配置复杂等问题。为深入分析其行为,我们基于 aipy 开发了 Windows 沙箱工具,针对桌面上的 NImplant.exe 进行多维度分析,涵盖进程行为、网络连接(如 TCP 请求、目标 IP/域名)、文件控制等,并生成传输层监控报告与沙箱截图。结果显示,aipy 工具响应迅速,报告清晰易读,满足分析需求。
|
10月前
|
网络协议 安全 测试技术
Windows为何在高速网络环境频繁“失速”?
本文深入剖析了企业在高速网络环境中,因Windows系统限制导致传输速率下降的问题,包括接收缓冲区、安全软件及老旧设备等因素,并提供四步定位法及优化方案,助力企业突破传输瓶颈,提升效率。
|
11月前
|
安全 Ubuntu Linux
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
496 0
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
|
12月前
|
XML 安全 网络安全
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
259 0
Nipper 3.7.0 Windows x64 - 网络设备漏洞评估
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
406 32
|
缓存 监控 网络协议
计算机网络的常用的网络通信命令(Windows)
本文介绍了网络技术中常用的命令,如ping用于检测网络连通性,ipconfig查看TCP/IP配置,netstat监控网络状态,arp显示和修改ARP缓存,at安排任务执行,tracert追踪路由,以及nbtstat获取NetBIOS信息。
434 1
|
安全 Windows
怎样利用 Windows XP实现网络统一关机
怎样利用 Windows XP实现网络统一关机
怎样利用 Windows XP实现网络统一关机
|
网络协议 Go Windows
【应用服务 App Service】App Service中抓取网络日志
【应用服务 App Service】App Service中抓取网络日志
227 2
|
网络协议 安全 前端开发
【应用服务 App Service】Azure 应用服务测试网络访问其他域名及请求超时限制(4分钟 ≈ 230秒)
【应用服务 App Service】Azure 应用服务测试网络访问其他域名及请求超时限制(4分钟 ≈ 230秒)
195 2