【问题标题】:C# client how to invoke wsdl fileC#客户端如何调用wsdl文件
【发布时间】:2011-05-25 03:10:30
【问题描述】:

我的客户给了我一个 .wsdl 文件来访问他们的网络服务。使用VS2008我可以创建一个项目,但是我不知道如何使用其中的.wsdl文件。

【问题讨论】:

    标签: c# .net visual-studio-2008 wsdl


    【解决方案1】:

    您不调用 WSDL 文件,而是从文件中添加服务引用。

    要添加引用,请右键单击项目,选择Add Service Reference。将路径粘贴到您的 wsdl 文件并点击 Go

    如果您想使用旧版 Web 服务客户端,请选择 Add Web Reference 并从那里粘贴到 wsdl 文件的路径。

    我建议使用 WCF(添加服务引用选项)。

    要使用服务引用添加如下代码:

    var serviceClient = new ServiceReferenceName.MyClassClient();
    serviceClient.DoSomething();
    

    您还需要使用客户应提供给您的服务器 URL 更新配置文件:

    <client>
      <endpoint address="http://UrlFromYourCustomerHere"
                binding="basicHttpBinding"
                bindingConfiguration="xxx"
                contract="MyServiceReference.xxx"
                name="xxx/>
    </client>
    

    【讨论】:

    • +1 用于推荐不同的方法,但仍回答原始问题。
    • @Alex - 是否可以在 c# 中动态或在运行时更改 WSDL URL?你能分享一些链接吗
    【解决方案2】:

    Web 引用使项目能够 使用一个或多个 XML Web services。 使用添加 Web 引用对话框 在本地搜索 Web 服务,在 局域网,或在 互联网。

    在将 Web 引用添加到您的 当前项目,您可以调用任何 Web 服务公开的方法。

    添加网络参考

    1. 在“项目”菜单上,单击“添加 Web 引用”。
    2. 在添加 Web 引用对话框的 URL 框中,键入 URL 以获取 Excel Web Services 的服务描述,例如 http:////_vti_bin/excelservice.asmx 或 http:///_vti_bin/ excelservice.asmx。然后单击 Go 检索有关 Web 服务的信息。 注注:

      您还可以通过右键单击“引用”并选择“添加 Web 引用”在“解决方案资源管理器”窗格中打开“添加 Web 引用”对话框。

    3. 在 Web 引用名称框中,将 Web 引用重命名为 ExcelWebService。
    4. 单击“添加引用”为目标 Web 服务添加 Web 引用。
    5. Visual Studio 下载服务描述并生成一个代理类以在您的应用程序和 Excel Web Services 之间进行接口。

    阅读

    How to: Add and Remove Web References

    【讨论】:

    • 不建议使用旧版 Web 引用。 WCF(服务参考)是创建 SOAP 客户端的更新和更好的方法。
    • 另外,OP 提到没有引用 asmx,只有 wsdl 文件可用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-14
    • 2012-12-12
    • 1970-01-01
    • 1970-01-01
    • 2011-07-11
    • 2013-11-17
    相关资源
    最近更新 更多