2007/10/24

ASP.NET 2.0 檔案上傳的處理

IIS的預設上傳大小為4096KB, 上限最大值為2097151KB(2GB)
若要更改其設定則在
裡,加入
其中10000則約為10MB,代表你可以上傳10MB的檔案,
但要注意的是,maxRequestLength是指整個form上傳的總數,
因此如果你要一次上傳多個檔案,則要彈性去調整這個值....



void Application_Error(object sender, EventArgs e)
{
// 發生未處理錯誤時執行的程式碼

Exception ex = Server.GetLastError();

if (ex is HttpException)
{
Server.ClearError();
Response.Redirect("~/ErrorPage.aspx?ErrorInfo=" + ex.Message);
}
else
{
Response.Redirect("~/ErrorPage.aspx?ErrorInfo=系統忙錄中,請您稍後再試...");
}


}


像一般我想限制使用者只能上傳5MB的檔案,maxRequestLength我就暫時設為10000

但是還有個問題,若你上傳超過10MB的檔案時,
try catch無法去抓到這個exception,網頁上會出現錯誤,
為了防止此一情形,只好在Global.asax裡加入程式碼去控制...

參考資料來源:ASP.NET 檔案上傳時超過4MB時,程式會掛掉...

沒有留言: