我需要将哪些参数传递到此SOAP Web服务中

时间:2014-04-18 11:16:17

标签: .net vb.net winforms web-services soap

在Windows窗体应用程序中,我需要调用SOAP Web服务(http://www.dat.de:80/GlassRep/services/Authentication?wsdl)。

对于这个WebService,我有一些提供样本的文档。

ConsoleApplication:

ConsoleApplication1.de.dat.www.VehicleSelection vi = new ConsoleApplication1.de.dat.www.VehicleSelection();
vi.CookieContainer = new System.Net.CookieContainer();
string sessionID = vi.doLogin("123456789",
                "username1",
                "akEwRUF3TUM45678Gd5U2NxdHdlKzBaQTF4QVBIT21DVXpRPQ==");
Console.WriteLine("sessionID = " + sessionID);

但是当我调用WebService时:

Dim authService As New WebServiceTest.Authentication
    authService.doLogin(

方法doLogin需要一个参数WebServiceTest.doLoginRequest(),所有方法都是如此。

为什么方法doLogin没有参数3字符串但是有doLoginRequest()?

我需要改变什么或我做错了什么?

谢谢!

2 个答案:

答案 0 :(得分:1)

doLogin方法期望参数类型为doLoginRequest。我没有测试这个,因为我没有授权访问他们的服务,也不知道它的作用。但这就是我需要做的事情。

Dim auth As New de.dat.www.Authentication()
Dim req As New de.dat.www.doLoginRequest()
req.customerNumber = "123456789"
req.customerLogin = "username1"
req.customerSignature = "akEwRUF3TUM45678Gd5U2NxdHdlKzBaQTF4QVBIT21DVXpRPQ=="
auth.doLogin(req)

我对提供给请求参数的值做了一些假设。您需要与文档或公司进行验证,以确保这些是正确的。我还没有提供interfacePartnerNumberinterfacePartnerSignature

答案 1 :(得分:0)

这听起来像你打电话给doLogin()时你没有传递3个字符串的选项?这可能是一个有更多选项的重载方法吗?

我认为你没有足够的代码可供任何人帮助你尝试过。

看起来您需要首先声明网站以使authService正常工作。