我导入了一个WSDL,现在是什么?

时间:2011-02-11 08:10:12

标签: vb.net web-services wsdl

网络服务新手......请耐心等待。

我获得了一个WSDL文件,可以导入到我的vb .NET项目中。我知道这是一份合同,应该告诉我如何使用相关的Web服务。这就是我的问题所在。我在导入的服务引用中看到了各种类,属性,接口等。没有什么告诉我“如果你有X,Y和Z作为输入,则调用此函数返回W”。

冒着听起来太模糊的风险,我应该寻找的是什么,告诉我应该如何使用它?我如何知道要调用哪些函数以及从哪些类调用它们?我是否应该期望WSDL提供一些文档,或者WSDL应该足以让我查看它并说“啊,这就是如何使用它!”。

我已经阅读了网上的各种WSDL教程,他们给了我一个基本的理解(我认为......?)。我在某处遗漏了某些东西,我非常确定在哪里。

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

生成的类很容易使用。

基本上你会有一个客户端类,并且在该类中为WSDL中声明的每个端点/操作提供一个方法。
另外,对于XSD部分中定义的每个复杂类型,应该有一个类(操作输入arg对象和输出结果对象)。

然后,您可以以类似于以下(简化)示例的方式调用WS。

Try
    Dim service As New MyServiceRef.MyServiceClient()
    service.Open()

    Dim output As MyServiceRef.myCallResponse
    Dim args As New MyServiceRef.myCallRequest

    args.arg1 = 1
    args.arg2 = "A"

    output = service.myCallRequest(args)
    ...
Catch ex As Exception
    treat ( ex )
End Try

答案 1 :(得分:1)

WSDL将告诉您或者最好是SOAP库如何与SOAP服务器进行通信。 SOAP服务可以是几乎任何东西获取数据的接口。

但是,如果函数名称和参数名称不好,那么您要发送给SOAP服务的数据以及响应的内容可能会非常模糊。

大多数情况下,应记录在案。您应该从服务提供商处获取这些文档或了解服务实际执行的操作。 WSDL并不是真正意义上的人类消费。但是,如果您正在编写自己的XML,那么是的,您需要注意WSDL。如果库正在为您创建XML,它通常与WSDL一起使用,以了解如何构造XML并读取响应。

答案 2 :(得分:-1)

添加Web服务的引用时,它会为您调用服务器上的Web方法创建代理。 Here是一个在VB.NET中使用Web服务的简单教程