在做自動更新程式時想省點事,直接使用HttpWebRequest和HttpWebResponse從伺服器上下載更新的檔案。 使用時注意Close回應流:
使用HttpWebRequest.GetResponse()取得HttpWebResponse介面後,必須記得呼叫HttpWebResponse.close關閉流。
如果使用HttpWebResponse.GetResponseStream()取得回應流的話,那麼使用此Stream的Close方法來關閉也是一樣。
如果是使用StreamReader.ReadToEnd()從回應流讀取文本,則在讀取完內容後會自動關閉流。
MSDN中這樣描述HttpWebResponse.close方法:
Close 方法關閉回應流並釋放到資源的連線以供其他請求重複使用。
您必須呼叫Stream.Close 或HttpWebResponse.Close 方法來關閉串流並釋放連線以進行重複使用。不必同時呼叫Stream.Close 和HttpWebResponse.Close,但這樣做不會導致錯誤。關閉該流失敗會導致應用程式用盡連線。
連線限制好像是最大2個,不知是IIS的限制還是本地HttpWebRequest的限制。