2011年5月16日 星期一

如何取得 web.config 裡的 httpRuntime 資訊

常常會有機會需要去取 web.config 裡的設定值來參考,尤其是資料庫的連線字串。遇到這種情況,可以很簡單地透過  ConfigurationManager.AppSettings.Get(key);  來完成。但如果有人要的是 裡的資訊時該怎麼辦呢? 因為有可能想要知道目前 web.config 是否有針對檔案上傳的大小作限制。

遇到這情況,就要改用以下方式來撰寫:

HttpRuntimeSection section = (HttpRuntimeSection)ConfigurationManager.GetSection("system.web/httpRuntime");

進一步完成一個測試程式如下:

HttpRuntimeSection section = (HttpRuntimeSection)ConfigurationManager.GetSection("system.web/httpRuntime");
        int maxFileSize = section.M
axRequestLength ; string strTimeOut= section.ExecutionTimeout.ToString(); Response.Write(string.Format("WebConfig Settings: maxRequestLength: {0} executionTimeout: {1}", maxFileSize, strTimeOut));


圖片的上半部是執行結果的圖,而下半部則是當 Web.Config 沒有設定 時所跑出的結果。可以發現,當你沒有設定 時,預設值是 4096 KB,而等候逾時期間則是 110秒。


後記:這一篇文章其實是上禮拜就 PO 過了,沒想到隔天竟然被 Google 移除。最近 Google 的伺服器其實不大穩定,官方說明是因為美國大停電,造成 Blogger 暫時變成唯讀,無法編輯。我也在此同時發現自己無法編輯 Blogger 文章,時間長達2天之久。但我也發現最近 PO 的文章竟也離奇失蹤了,心裡期待著 Blogger 會將這篇文章還給我,但還是落空了。還好自己有習慣用 Google Reader 將自己的文章列入,所以雖然 Blogger 將文章移除,但 Google Reader 還是有幫我保留一份,也讓丟失的文章得以重見天日。


沒有留言:

張貼留言