我需要从外部公司调用 ASP.NET Web 服务。为简单起见,假设我期望的界面如下所示:
public interface MyIntf
{
byte[] downloadFile(string userName, string password, DateTime fileDate);
}
当我使用 Visual Studio 2012 导入 WSDL 时,我得到了这样的界面:
public interface MyIntf
{
MyNamespace.DownloadFileResponse downloadFile(MyNamespace.DownloadFileRequest);
}
当然也有支持这个定义的类:DownloadFileResponse、DownloadFileResponseBody、DownloadFileRequest 和 DownloadFileRequestBody。
这使得调用函数变得非常痛苦,特别是因为实际接口有几个方法,有些只有一个参数。
我知道我之前已经导入了 Web 服务并获得了预期的定义,那么是什么导致 Visual Studio 现在让我的生活变得复杂?