2011-02-05 30 views
0

我使用Web客戶端下載從網頁一些文字,像這樣:C#Web客戶端運行緩慢第一次

WebClient wc = new WebClient(); 
string str = wc.DownloadString("http://blah"); 

現在雖然工作絕對沒問題,一個問題,我與它面對的是第一次初始化和下載字符串非常慢 - 大約需要5秒。之後,它在半秒內下載文本。

有什麼辦法可以解決這個問題嗎?我真的很喜歡它一直很快,所以它不會讓用戶煩惱。

我正在使用C#.NET 4.0,如果重要的話。

+0

您試圖獲取ASP.NET的遠程站點? – 2011-02-05 11:20:28

+0

我會做一些性能分析,看看它是否需要5秒直到響應或遠程部分。 – 2011-02-05 11:31:47

回答

0

下列溶液從here

採取什麼你看到的是由自動代理髮現造成的。當應用程序啓動時,最初 我們將使用哪個代理,然後使用該代理或後續請求的代理腳本。當您關閉應用程序時,腳本或代理基礎架構不在 ,我們必須在應用程序啓動時再次執行此操作。

你有幾個選擇。

  1. 您可以通過進入IE設置並關閉自動檢測代理設置選項來關閉自動代理。這是在工具 - > Internet選項 - >連接選項卡 - >局域網設置按鈕。取消選中自動檢測設置。

  2. 如果您可以確定一個靜態代理服務器[trhat不會動態更改其名稱],您可以指定該代理 WebProxy wp = new WebProxy(,......);

WebClient.Proxy = wp;