使用WCF测试客户端 z
http://blog.csdn.net/u013036274/article/details/50570989
【是什么】
WCF测试客户端(WCF Test Client)是一个用来测试WCF服务程序的调试工具,能够使开发WCF服务更加方便。
【打开方法】
有四种打开方式
1、找到Vs的安装路径,找到Common7\IDE\WcfTestClient.exe,双击打开。如图
2、在Visual Studio命令提示中输入“WcfTestClient”回车即可。
3、打开VS,项目--属性-调试,设置启动选项。如图
4、在解决方案中,将WCF设为启动项目,将.svc设为启动页,直接启动即可。
启动效果如图所示:
【怎么用】
实现好服务和契约后,按ctrl+F5后就可以直接测试了。虽然我们没有编写客户端,但系统自动提供了一个WCFTestClient供测试使用:
界面如图。(注意右侧“起始页”上的提示,教我们基础操作)
1、服务操作
WCF测试客户端主窗口的左窗格列出了所有可用的服务及其各自的终结点和操作(方法)。
双击某个方法,可以在具有此方法名称的新选项卡内的右窗格中查看其内容。
左窗格还列出了客户端配置文件。双击即可在对应的右窗格中显示文件的内容。
2、输入测试参数
若要查看测试参数,请双击某项操作以在右窗格中打开它,可以根据具体情况输入任意参数值以测试服务。若要将他们发送给服务,请单击“调用”。此时下面就会显示出测试结果。如图
在Visual Studio之外打开WCF测试客户端有两种方法:第一种方法是到其所在路径(Visual Studio安装路径\Common7\IDE\WcfTestClient.exe)双击打开。第二种方法是在“Visual Studio命令提示(Visual Studio Command Prompt)”中输入“WcfTestClient”命令
Visual Studio不同的项目模板,提供了不同的WCF测试客户端启动方法。下面这张表格是Visual Studio 2010 Beta2中,与WCF相关的项目模板:
|
项目模板名称 |
模板位置 |
.NET Framework版本 |
|
WCF服务库 |
新建项目 -> WCF结点 |
3.0/3.5/4.0 |
|
WCF服务应用程序 |
新建项目 -> Web结点 |
3.0/3.5/4.0 |
|
WCF工作流服务应用程序 |
新建项目 -> WCF结点 |
4.0 |
|
WF顺序服务 |
新建项目 -> WCF结点 |
3.5 |
|
WF状态机服务 |
新建项目 -> WCF结点 |
3.5 |
|
联合服务库 |
新建项目 -> WCF结点 |
3.5/4.0 |
|
WCF服务 |
新建网站 |
3.0/3.5/4.0 |
表1
WCF服务库、WF顺序服务、WF状态机服务:
启用调试(F5)默认会启动WCF服务主机(WCF Service Host)托管项目中的服务,并且会自动启用WCF测试客户端,请看图2:
![]()
图2
如果希望F5时,不启动WCF测试客户端,可以通过修改项目属性 -> 调试 -> 命令行参数来实现,如图3所示:
![]()
图3
WCF服务应用程序、WCF工作流服务应用程序:
当在“解决方案资源管理器(Solution Explorer)”中,焦点选定在特定服务的.svc或.xamlx文件时,F5会启动WCF测试客户端。请看图4:
![]()
图4
如果希望F5时始终启动IE,可以在.csproj.user文件里增加EnableWcfTestClientForSVC属性配置以禁用WCF测试客户端:
<Project>
<ProjectExtensions>
<VisualStudio>
<FlavorProperties>
<WebProjectProperties>
<EnableWcfTestClientForSVC>False</EnableWcfTestClientForSVC>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
</Project>
另外,在.csproj文件里还有EnableWcfTestClientForSVC属性的默认值设置。如果.csproj.user文件没有该属性的相关设置,则该属性则使用.csproj文件里默认值:
<Project>
<ProjectExtensions>
<VisualStudio>
<FlavorProperties>
<WebProjectProperties>
<EnableWcfTestClientForSVCDefaultValue>False</EnableWcfTestClientForSVCDefaultValue>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
</Project>
下表是.csproj.user和.csproj文件相关属性的设置和启动客户端类型的逻辑关系:
|
.csproj.user 文件设置 |
True |
False |
未设 |
未设 |
未设 |
|
.csproj 文件设置 |
True/False/未设 |
True/False/未设 |
True |
False |
未设 |
|
启动 客户端类型 |
WCF测试客户端 |
IE |
WCF测试客户端 |
IE |
IE |
表2
例如,在一个利用源代码控制的项目组中,.csproj.user文件不会被共享,而.csproj文件会被共享。如果只希望改变个人的WCF测试客户端的启动行为,则应该修改.csproj.user文件;如果希望改变开发这个项目的所有人的启动行为,则应修改.csproj文件。
联合服务库:
WCF测试客户端并不能对这种服务项目进行测试,所以F5时并不会自动启动WCF测试客户端。
WCF服务(网站):
F5时不会自动启动WCF测试客户端。如果希望获得和WCF服务应用程序相同的启动行为,可以修改C:\Users\<username>\AppData\Local\Microsoft\WebsiteCache\websites.xml文件(XP/2003系统中文件在相似位置):
<DesignTimeData>
<Website RootUrl="C:\" CacheFolder="WCFService1" EnableWcfTestClientForSVC="true"/>
</DesignTimeData>
注意在修改websites.xml文件之前请先关闭Visual Studio,否则Visual Studio关闭时会重写覆盖websites.xml文件。
使用WCF测试客户端 z的更多相关文章
- 启用WCF测试客户端的相关技巧
在Visual Studio之外打开WCF测试客户端有两种方法:第一种方法是到其所在路径(Visual Studio安装路径\Common7\IDE\WcfTestClient.exe)双击打开.第二 ...
- 使用VS自带WCF测试客户端
打开VS自带WCF测试客户端 打开VS2015 开发人员命令提示 输入:wcftestclient,回车 提取wcftestclient 当然,可以看到VS2015 开发人员命令提示知道,当前路径在C ...
- VS自带WCF测试客户端简单介绍
在目前的二次开发项目中,一些信息是放在客户那里的,只给你一个服务地址,不知道具体有什么方法,每次想调用一个服务不知道能不能实现目前的需求,只能测试.写个测试程序真的划不来,占用时间不说,而且你忙了一上 ...
- 使用WCF 测试客户端测试你的WCF服务
wcftestclient.exe是一个GUI的工具用于测试WCF,只需在Visual studio command line 窗口中键入 wcftestclient,就启动这个程序.如下图: 然后通 ...
- WCF测试客户端的使用
进入vs安装目录下,C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE,找到WcfTestClient.exe程序,点击文件 ...
- 如何打开WCF测试客户端
- WebService及WCF获取客户端IP,端口
wcf获取客户端IP,端口 var context = OperationContext.Current; var properties = context.IncomingMessageProper ...
- 重温WCF之WCF传输安全(十三)(4)基于SSL的WCF对客户端采用证书验证(转)
转载地址:http://www.cnblogs.com/lxblog/archive/2012/09/20/2695397.html 前一篇我们演示了基于SSL的WCF 对客户端进行用户名和密码方式的 ...
- wcf测试工具
WCF测试工具-WcfStorm WCF测试工具-WcfStorm http://www.wcfstorm.com/wcf/home.aspx WcfStorm is a dead-simple, ...
随机推荐
- js自动检索输入文章长度
1. 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- 原生js将数组分割成固定个数一组的小数组
reSetData(dataList,num) { let arr = []; let len = dataList.length; for (let i = 0; i < len; i += ...
- 【LOJ】 #2520. 「FJOI2018」所罗门王的宝藏
题解 发现似乎相当于问一个2000个元的方程组有没有解-- 然而我懵逼啊-- 发现当成图论,两个点之间连一条边,开始BFS,每个点的值赋成边权减另一个点的点权 如果一个环不合法那么肯定无解 代码 #i ...
- 基于ZooKeeper实现——分布式锁与实现
引言 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提 ...
- php实现var_dump函数
<?php class VarDump { private static $isInLoop = false; private static $buffer = false; public st ...
- 洛谷P1345 [USACO5.4]奶牛的电信 [最小割]
题目传送门 奶牛的电信 题目描述 农夫约翰的奶牛们喜欢通过电邮保持联系,于是她们建立了一个奶牛电脑网络,以便互相交流.这些机器用如下的方式发送电邮:如果存在一个由c台电脑组成的序列a1,a2,..., ...
- shell top解析
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不 ...
- supervisor控制台运行出错,BACKOFF Exited too quickly
需要把虚拟环境中的flask路径导入,我这里是 export PYTHONPATH=$PYTHONPATH:/root/FlaskWebDevelopment/venv/lib/python2.7/s ...
- Unity 2D游戏开发教程之精灵的死亡和重生
Unity 2D游戏开发教程之精灵的死亡和重生 精灵的死亡和重生 目前为止,游戏项目里的精灵只有Idle和Walking这两种状态.也就是说,无论精灵在游戏里做什么,它都不会进入其它的状态,如死亡.于 ...
- Unity 游戏开发技巧集锦之使用cookie类型的纹理模拟云层的移动
Unity 游戏开发技巧集锦之使用cookie类型的纹理模拟云层的移动 使用cookie类型的纹理模拟云层的移动 现实生活中,当阳光直射大地,而天空中又有很多云时,云层的影子总是会投射在大地上,风吹着 ...