使用WCF测试客户端测试WCF数据服务

时间:2011-01-21 13:45:32

标签: wcf wcftestclient

我无法使用VS2010中提供的Wcf测试客户端测试WCF数据服务。常规服务工作正常,但是对于数据服务,我在尝试调用测试客户端中的url时遇到此错误:

  

错误:无法从http://localhost:31745/MyWcfDataService.svc获取元数据如果这是您有权访问的Windows(R)Communication Foundation服务,请检查您是否已在指定地址启用元数据发布。有关启用元数据发布的帮助,请参阅http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata上的MSDN文档:Exchange错误URI:http://localhost:31745/MyWcfDataService.svc元数据包含无法解析的引用:'http:// localhost:31745 / MyWcfDataService.svc'。远程服务器返回意外响应:(405)方法不允许。远程服务器返回错误:(405)方法不允许.HTTP GET错误URI:http://localhost:31745/MyWcfDataService.svc网址http://localhost:31745/MyWcfDataService.svc/处的文档未被识别为已知文档类型。每种已知类型的错误消息可以帮助您解决问题: - 来自'XML Schema'的报告是'W3C XML Schema的根元素应该是,它的名称空间应该是'http://www.w3.org/2001/XMLSchema'。'.-来自“DISCO文档”的报告是“无法找到网址http://localhost:31745/MyWcfDataService.svc/的发现文档”。 - 无法识别文档格式.-“WSDL文档”中的报告是“XML文档中存在错误(2,2)。”。 - 没想到。

数据服务运行正常,我可以在浏览器中查看有问题的svc文件并查看wsdl。

wcf测试客户端是否意味着测试WCF数据服务?如果可以使用,那我该怎么做呢?我需要进行任何修改吗?

谢谢..

2 个答案:

答案 0 :(得分:4)

WcfTestClient仅适用于 SOAP 绑定,例如basicHttpBindingwsHttpBindingnetTcpBinding

它不支持基于REST的WCF服务。

为什么?您可以使用自己喜欢的浏览器测试基于REST的服务 - 无需特殊的测试客户端!如果您需要执行POSTPUT等HTML请求,请查看Fiddler

答案 1 :(得分:1)

我的回答可能有点晚,但您可以使用支持OData / WCF数据服务的LINQPad(http://www.linqpad.net)测试您的WCF数据服务。