2013-03-21 61 views
0

在我正在處理的文件上傳功能中,一個重要的問題是檢查上傳文件的大小。如果它大於默認大小,我應該會收到一條錯誤消息。但是,我得到這個屏幕,我不知道爲什麼。此外,我試圖調試代碼,但調試根本不起作用。它沒有去,雖然任何一行代碼,我不知道爲什麼當我在這個文件上傳功能中檢查上傳文件的大小時,爲什麼我會得到這個屏幕?

enter image description here

protected void UploadFile(object sender, EventArgs e) 
{ 
    if(FileUpload1.HasFile) 
    { 
     try 
     { 
      string[] validTypes = { "bmp", "gif"}; 
      string ext = System.IO.Path.GetExtension(FileUpload1.PostedFile.FileName); 
      int size = FileUpload1.PostedFile.ContentLength; 
      int limit = 84304; 

      if (size < limit) 
      { 
       .....................................      
      } 
      else 
      { 
       Label2.ForeColor = System.Drawing.Color.Red; 
       Label2.Text = "file is heavy"; 
      } 
     } 
     catch (Exception ex) 
     { 
      Label2.Text = "The file could not be uploaded." + ex.Message; 
     } 
    } 
} 
+0

應該這個字符串路徑= @「〜\ Images \」實際上也是在'Server.MapPath'('change'「\\」''''/「' – MethodMan 2013-03-21 19:07:15

+0

我不認爲這是原因,因爲除了尺寸大於t的文件外,該功能運行良好他默認的大小。 – 2013-03-21 19:24:33

+0

在配置中有一個設置,你可以設置'maxRequestength'我不知道我最初錯過了讀那個部分..我一直在編碼我的道歉 – MethodMan 2013-03-21 19:38:06

回答

2

您獲得的錯誤消息,因爲您選擇的文件大於4MB,這是默認大。如果您想增加要上傳的文件的大小,您需要在web.config中更改它。

的System.Web標籤內添加這樣一行:

<httpRuntime executionTimeout="600" maxRequestLength="512000" />

,其中600是秒數和512000是文件的最大大小(KB)

+0

如果我想用4Mb,應該我確實要顯示比此屏幕正確的錯誤信息? – 2013-03-21 19:22:31

+0

如果你看看我的代碼,你會看到我在標籤中輸入錯誤信息,但我不知道爲什麼它不起作用並獲得此屏幕。 – 2013-03-21 19:23:22

+1

@androidFanBoy正如我所說:由於您嘗試上傳的文件的大小,您會得到該錯誤。如果您想將文件限制爲4MB而不是將maxRequestLength設置爲大數目,然後執行您現在正在做的操作... – Nathan 2013-03-21 19:28:41

相關問題