2011-01-06 73 views
2

據我所知,HttpWebRequest類總是緩存下載的數據。現在我不介意這一點,但在應用程序持續時間內通過HttpWebRequest徹底重新解析相同的URL後,我注意到數據已損壞(因爲下載的JSON數據變得無法解析)。重新啓動電話模擬器後,它一切都會順利,直到它再次發生。WebRequest緩存Windows Phone 7

現在我只是想知道是否有可能關閉HttpWebRequest中的緩存。

下面是一些代碼,我使用做出的HttpWebRequest電話:

var request = (HttpWebRequest)WebRequest.Create(string.Format(uri)); 

     request.BeginGetResponse(a => 
     { 
      var response = request.EndGetResponse(a); 
      var responseStream = response.GetResponseStream(); 
      using (var sr = new StreamReader(responseStream)) 
      { 
       string json = sr.ReadToEnd(); 
       Deployment.Current.Dispatcher.BeginInvoke(() => 
       { 
        //Newtonsoft.Json.Linq; 
        JObject artistObject = JObject.Parse(json); 
        //...etc 
       }); 
      } 
     }, null); 
    } 

回答

4

的常用技術來解決這個緩存是一個參數添加到正在上連續調用增加查詢字符串。此線程更詳細地討論silverlight行爲,並介紹一些您可以查看的服務器處理方法,如果您擁有該控件。

WebClient Caching Problem

雖這麼說,你已經能夠生產出您所遇到的腐敗的一個簡單的攝製?這可能是值得的,看着。