我正在尝试使用SOAP Web服务,特别是:
http://api.affiliatewindow.com/v4/AffiliateService?wsdl
但是 - 在使用标准Webservices对话框添加服务引用后 - 生成的类中没有任何操作可用 - 它只是空的:
我尝试在“添加引用”对话框中更改所有不同的选项组合。
是否有其他方法可以添加此类型的引用?
(注意:为了实际调用操作,该服务需要一个用户名/密码头 - 也许我需要在生成类时包含它?如果是 - 如何?)
答案 0 :(得分:7)
我使用Web Services Description Language Utility (Wsdl.exe)手动生成代理类。
wsdl http://api.affiliatewindow.com/v4/AffiliateService?wsdl /namespace:AffiliateWindow
我喜欢使用命名空间选项,因此没有任何对象与我当前的解决方案存在冲突。
然后我可以将生成的代码文件添加到您的解决方案中。我从解决方案中附上了对象浏览器的屏幕截图:
现在,您可以根据需要实例化服务:
// I don't know anything about Affiliate Window - but I am assuming you would use it
// like the following code below
AffiliateWindow.UserAuthentication auth = new AffiliateWindow.UserAuthentication();
auth.sType = AffiliateWindow.UserType.affiliate;
auth.sPassword = "123456";
AffiliateWindow.ApiService svc = new AffiliateWindow.ApiService();
svc.UserAuthenticationValue = auth;
答案 1 :(得分:0)
我发现必须将一些SOAP引用(如SalesForce)添加为Web引用而不是常规服务引用。
右键单击“引用”,“添加服务引用”,然后单击底部的“高级”按钮,然后单击底部的“添加Web引用...”按钮。 如果输入有效的端点URL,它应该在对话框右侧的列表中显示可用于引用的Web服务。