2012-04-04 120 views
0

我有一個連接到本地IIS服務器的Windows Phone應用程序。它下載一些json數據並將其顯示在列表框中。我在頁面上也有一個刷新按鈕。當頁面加載完畢時是正確的,但按下刷新按鈕只會返回與頁面加載時相同的數據。我使用uri檢查了我的網絡瀏覽器,並且更新的數據正確顯示。此外,如果我退出Windows Phone應用程序並重新加載它的數據在那裏。這裏是我正在測試的一些虛擬代碼。Windows Phone WebClient不會更新新數據

在頁面加載:

 WebClient download = new WebClient(); 
     download.DownloadStringCompleted += new DownloadStringCompletedEventHandler(download_DownloadStringCompleted); 
     download.DownloadStringAsync(new Uri("http://sampledata/data")); 

     void download_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) 
     { 
      MessageBox.Show(e.Result); 
     } 

這工作得很好,並顯示我的JSON字符串的消息框。

在刷新:

private void Button_Click(object sender, RoutedEventArgs e) 
    { 
     WebClient refresh = new WebClient(); 
     refresh.DownloadStringCompleted += new DownloadStringCompletedEventHandler(refresh_DownloadStringCompleted); 
     refresh.DownloadStringAsync(new Uri("http://sampledata/data")); 
    } 

    void refresh_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) 
    { 
     MessageBox.Show(e.Result); 
    } 

這顯示是顯示在頁面加載,即使數據發生了變化同樣JSON字符串。有沒有人有任何想法?謝謝。

回答

0

您從服務器拉出多少數據?如果您需要舉重,請嘗試使用HttpWebRequest。我也有一些問題與Web客戶端加載和刷新數據。服務器上的每次更改都伴隨着很大的延遲...

1

嘗試在URL的末尾添加時間戳記。像refresh.DownloadStringAsync(new URI("http://sampledata/data" + DateTime.Now.ToString()));