1

我正在尝试使用此网络服务...

http://www.webservicex.net/uszip.asmx

当我添加对此 Web 服务的 Web 引用时,它提供的方法与 asmx 所说的不匹配。

我得到这样的方法....

ZipcodeLookup.GetInfoByZIPCompletedEventArgs
ZipcodeLookup.GetInfoByZIPCompletedEventHandler

我不知道如何使用这些。添加参考时我做错了什么,或者有人可能会阐明我如何使用这些方法?

谢谢!

4

1 回答 1

1

添加 Web 引用是一种较旧的已弃用的 WebServices 方法(尽管它仍然很好用)。对于这样的服务,您需要添加服务参考。为此,请右键单击项目中的引用并选择添加服务引用。在地址文本框中输入 URL,然后单击“开始”。然后,您会在输入的地址看到可用的服务列表。在这种情况下选择“USZip”并输入一个命名空间(ZipcodeLookup)。

您现在的用法是

        var service = new ZipcodeLookup.USZipSoapClient();
        XmlNode result1 = service.GetInfoByAreaCode("410");
        XmlNode result2 = service.GetInfoByCity("Annapolis");
        XmlNode result3 = service.GetInfoByState("MD");
        XmlNode result4 = service.GetInfoByZIP("21401");

正如@mattytommo 所说,您将获得与Web 服务关联的方法和类,这意味着如果Web 服务返回一种人类型,您将获得一个名为Person 的DTO 类型类。

希望这可以帮助。

于 2013-03-01T14:39:27.927 回答