2013-02-28 26 views
1

我試圖消耗此WebService ...如何使用www.webservicex.net/uszip.asmx與asp.net的MVC

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

當我添加Web引用到這個網頁服務它提供的方法與asmx所說的不一致。

我get方法是這樣....

ZipcodeLookup.GetInfoByZIPCompletedEventArgs 
ZipcodeLookup.GetInfoByZIPCompletedEventHandler 

而且我不知道如何使用這些。我在添加引用時做錯了什麼,或者有人可能闡明我如何使用這些方法?

謝謝!

+1

您不僅可以獲取方法,還可以獲取與該Web服務相關的所有類。以上兩者看起來像與Web服務中提供的功能相關的事件處理程序類。 – mattytommo 2013-02-28 20:54:39

回答

1

添加Web引用是對WebServices較早的棄用方法(雖然它仍然很好)。對於像這樣的服務,您需要添加服務參考。爲此,請右鍵單擊項目中的參考並選擇添加服務參考。在地址文本框中輸入網址,然後點擊「開始」。然後,您可以在您輸入的地址看到可用的服務列表。在這種情況下選擇「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服務將返回一個類型的人,你會得到一個DTO稱爲Person的類型類。

希望這會有所幫助。