2014-09-03 94 views
1

我正在製作Windows Phone 8應用程序。我有目標位置的經緯度。我需要獲得目標位置的雙字母ISO國家代碼。如何直接從使用VB.net的URL讀取文本?

我正在使用下面的代碼來實現它。

 'Dim address As String = puri 
     'Dim client As WebClient = New WebClient() 
     'Dim reader As StreamReader = New StreamReader(address) 
     'code = reader.ReadToEnd 
     Dim inStream As StreamReader 
     Dim wr As WebRequest 
     Dim webresponse As WebResponse 
     wr = WebRequest.Create(puri) 
     webresponse = wr.GetResponse() 
     inStream = New StreamReader(webresponse.GetResponseStream()) 
     code = inStream.ReadToEnd() 

其中puri(在註釋的代碼中)是字符串格式的web服務的地址。

當試圖評論的代碼時,我得到的錯誤是該字符串不能轉換爲system.uri格式。 (地址)

當嘗試註釋掉的代碼,我得到它說,GetResponse的是不是類成員的錯誤system.net.webrequest()

我與更新猜測到.NET代碼改變,但我無法找到關於這個話題的最新消息。

URI = http://api.geonames.org/countryCode?lat=17.60890&lng=76.98966&username=demo 

回答

-1

我認爲你應該使用WebClient Class而不是WebRequest。它更簡單快捷。這裏有一個簡單的例子:

Dim WebCL As New WebClient 
Dim DownLoadedText As String = String.Empty 
Try 
    DownLoadedText = WebCL.DownloadString("Your Url") 
    ' Do something 
Catch ex As Exception 
    Throw New Exception("Oops!! ERROR has occured, something is wrong with your address") 
End Try 
+0

DownloadString不是會員system.net.webclient。我發現這個代碼在別的地方。由於這個錯誤沒有工作。 – doodla 2014-09-04 04:02:46

+0

其實它是.... [MSDN](http://msdn.microsoft.com/en-us/library/fhd1f0sw(v = vs.110).aspx) – Eminem 2014-09-04 12:23:12

+0

它不起作用。我知道文檔顯示DownloadString屬於webclient類。但智能感知僅顯示WebClient對象的DownloadStringAsync。而只是強制DownloadString產生一個錯誤。 – doodla 2014-09-04 17:05:41

相關問題