ASP.NET 頁面請求超時時間設置 Server.ScriptTimeOut executionTimeout


 
 
 
ASP.NET 頁面請求超時時間(頁面後臺程序執行時間)默認值爲 110 秒(在 .NET Framework 1.0 版和 1.1 版中,默認值爲 90 秒)
即: Server.ScriptTimeout = 110(HttpServerUtility.ScriptTimeout = 110)
        System.Web.Configuration.HttpRuntimeSection().ExecutionTimeout.ToString() = 00:01:50(110 秒)
 
方法一:設置 Server.ScriptTimeout 的值
    注意:設置的值必須大於90,不然不會生效,請求超時值依然是90秒 (網上流傳的說法,經驗證錯誤!!!)
               只有當 compilation 元素中的調試屬性爲 False 時,此超時屬性才適用(true:ScriptTimeOut=30000000)。若要避免在調試期間關閉應用程序,請不要將此超時屬性設置爲較大值。          
//單位秒
Server.ScriptTimeout = 60;
 

方法二:Web.config 配置 httpRuntime executionTimeout (單位秒)web

    注意:只有當 compilation 元素中的調試屬性爲 False 時,此超時屬性才適用(true:ScriptTimeOut=30000000)。若要避免在調試期間關閉應用程序,請不要將此超時屬性設置爲較大值。
               httpRuntime executionTimeout  的設置可修改 Server.ScriptTimeout 的值,使用 ScriptTimeout 屬性以編程方式對超時值進行的設置優先於 Web.config 設置。
<system.web>
    <compilation debug="false" targetFramework="4.0" />
    <!-- 設置爲600秒 Server.ScriptTimeout = 600 -->
    <httpRuntime executionTimeout="600"/>
</system.web>
  
方法三:設置 HttpRuntimeSection.ExecutionTimeout 的值 (經測試,無效!!!不知如何使用!
System.Web.Configuration.HttpRuntimeSection configSection = new System.Web.Configuration.HttpRuntimeSection();
configSection.ExecutionTimeout = TimeSpan.FromSeconds(100);
 
方法四:IIS配置 修改 腳本超時 值
 
 
這個未肯定 網站→高級設置:
同樣未肯定 應用程序池→高級設置:
 
 
注意:若是頁面使用了 UpdatePanel,UpdatePanel 內部的請求分如下兩種狀況:
         ① 設置的超時值 >=90秒,UpdatePanel 內部的請求超時值將變爲 90 秒!
         ② 設置的超時值 <90秒,UpdatePanel 內部的請求超時值將變爲 所設置的值!
 
下圖 Server.ScriptTimeout = 5 秒,點擊 UpdatePanel 內部的按鈕,Thread.Sleep(20 * 1000) 秒,請求超時,可是頁面看不到報錯信息!
 而點擊UpdatePanel 外部的按鈕,則會報如圖1的 「請求超時」的錯誤信息!
下圖 Server.ScriptTimeout = 100 秒,點擊 UpdatePanel 內部的按鈕,Thread.Sleep(95 * 1000)//中止95秒;    實際上到 90秒就超時了(以下面第二圖)
 而點擊 UpdatePanel 外部的按鈕,Thread.Sleep(95 * 1000)//中止95秒 ,請求成功!
 
=======================================================================================================================
全局超時時間
服務器上若是有多個網站,但願統一設置一下超時時間,則須要設置 Machine.config 文件中的 ExecutionTimeout 屬性值。
Machine.config 文件位於 %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\ 目錄中。
<httpRuntime executionTimeout="600" />
相關文章
相關標籤/搜索