Web 服务、服务参考、命令行 wsdl 创建

web service, service reference, command line wsdl creation

我有一个使用 .NET ASMX 服务进行通信的应用程序。我看到一些开发人员通过命令行使用 wsdl 命令来生成强类型 类,它不依赖于 web.config.

中的端点

为什么有些人会使用 wsdl 命令行而不是使用 service reference(右键单击 -> 添加服务引用)?你会怎么做?

我想如果您需要在设计时与未知的 WS 交谈,您所解释的技术应该会有用。

我看不出有任何其他使用它的好理由,因为它提供了很大的灵活性,但这种灵活性很容易成为痛苦(如果您的解决方案中没有严格的模式,风险是引入运行时错误,在设计时很难发现时间)

我这样做的一个原因是我可以模拟外部 Web 服务并 return 从中测试数据。 使用 wsdl 命令,我可以创建我期望调用的 Web 服务的精确版本(例如,由于存在于另一个网络上,它可能不可用),然后从可用例程中获得这些 return "dummy" 回复。仅通过添加服务引用,您无法对此进行任何控制。