【问题标题】:Create web service using external WSDL through Add Service Reference通过添加服务引用使用外部 WSDL 创建 Web 服务
【发布时间】:2012-05-31 20:17:50
【问题描述】:

我在 .NET 4 中有一个 ASP.NET MVC3 项目,它需要充当 SOAP 服务器来接收来自另一个网站的通知。

我之前创建了网络服务,但我不知道如何设置一种方式来接收这些通知,其中 WSDL 由外部网站提供。

我知道我可以创建一个服务并让它生成它自己的 WSDL,但我假设必须有一种简单的方法来添加服务引用,然后创建一个使用它生成的对象/方法的服务.

我该怎么做?

谢谢

【问题讨论】:

  • 为什么要从外部网站的 WSDL 生成服务?在您根据定义的规范构建服务之后,他们应该从您的 WSDL 生成他们的 客户端。无论如何,要回答您的问题,如果您添加服务引用,您将拥有所有必需的方法、方法签名和相关类型,因此只需将其转换为实现 ServiceBase 的类并实现所有方法。
  • 对不起,我不明白。他们的服务已经存在——也许我需要反过来问它——给定一个外部 SOAP 服务,我如何使用它来接收通知?
  • 客户端通常不会接收来自 SOAP 服务的通知。您需要为外部网站提供第二项服务作为客户端并向您的服务发送通知。否则,您需要某种持久的双工连接,在一天开始时连接到该服务,并保持连接打开以等待来自该服务的任何通信。
  • 要么我不明白你的问题......
  • 好的,听起来他们有一个预先编写的客户端,我必须编写一个它可以使用的服务,在这种情况下,您的第一个响应似乎是正确的。在这种情况下,您能否通过“将其转换为实现 ServiceBase 并实现所有方法的类”来扩展您的意思?我可以毫无问题地创建类,但如何将其设置为作为可消耗服务运行?

标签: asp.net-mvc asp.net-mvc-3 wcf web-services service-reference


【解决方案1】:

您可以使用 Visual Studio 命令行中的 svcutil tool 创建所需的配置和代理文件

【讨论】:

  • 如果我错了,请纠正我,但这不只是创建我已经完成的服务引用吗?
  • 也许我没有正确理解你。从你问/写给 mellamokb 的内容来看,你需要使用其他人提供的服务。您也可以通过 Visual Studio 添加引用,但两种方法都可以解决这个问题“给定外部 SOAP 服务,我如何使用它来接收通知”。还缺少什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-08
  • 1970-01-01
  • 2013-09-02
  • 1970-01-01
  • 2011-01-23
  • 2011-03-04
相关资源
最近更新 更多