网络服务新手......请耐心等待。
我获得了一个WSDL文件,可以导入到我的vb .NET项目中。我知道这是一份合同,应该告诉我如何使用相关的Web服务。这就是我的问题所在。我在导入的服务引用中看到了各种类,属性,接口等。没有什么告诉我“如果你有X,Y和Z作为输入,则调用此函数返回W”。
冒着听起来太模糊的风险,我应该寻找的是什么,告诉我应该如何使用它?我如何知道要调用哪些函数以及从哪些类调用它们?我是否应该期望WSDL提供一些文档,或者WSDL应该足以让我查看它并说“啊,这就是如何使用它!”。
我已经阅读了网上的各种WSDL教程,他们给了我一个基本的理解(我认为......?)。我在某处遗漏了某些东西,我非常确定在哪里。
感谢您的帮助。
答案 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服务的简单教程