1

我从老板那里得到了一个原始的 wsdl 文件,并要求我基于它创建一个 Dummy Web Service。然后创建一个客户端来测试它,使用从 Dummy Web Service 生成的新 wsdl 文件,它需要与原始 wsdl 完全相同。不幸的是,我发现由 Dummy Web Service 生成的新 wsdl 与原来的不同。谁能告诉我为什么?如何获得与原版相同的 wsdl?谢谢!

我为这项任务做了什么:

  1. SvcUtil.exe /sc original.wsdl--> 获取 C# 服务类并为其实现具体类(虚拟 Web 服务)
  2. svcutil /t:metadata 'http://localhost/myservice/test.svc?singlewsdl'--> 从正在运行的虚拟 Web 服务中获取新的 WSDL,但它会与原来的不同
  3. WSDLImp.exe创建Delphi客户端(测试客户端)的代理类
4

1 回答 1

1

情况总是如此。您正在比较两个不同的 WSDL。一种是与您的客户端共享的虚拟 WSDL,用于使用 SvcUtil 生成服务。部署 Web 服务并查看它共享的 WSDL 后,您现在就有了一个具体的 WSDL。

您最好通过基于虚拟 WSDL的服务调用来测试您的新服务,因为这是您可能在客户端之间共享的 WSDL。SoaupUI 能够基于您的虚拟 WSDL 生成和执行测试。

于 2013-02-26T06:51:08.520 回答