2011-07-01 36 views

回答

3

你需要把控件數組:

FileUpload[] uploads = { FileUpload1, FileUpload2, ... }; 
1

你爲什麼要使用一個循環?你不能這樣做嗎?

if (FileUpload1.HasFile) { 
    DoFileUpload(FileUpload1); 
} 
if (FileUpload2.HasFile) { 
    DoFileUpload(FileUpload2); 
} 
if (FileUpload3.HasFile) { 
    DoFileUpload(FileUpload3); 
} 
if (FileUpload4.HasFile) { 
    DoFileUpload(FileUpload4); 
} 

private void DoFileUpload(FileUpload fileUploadControl) { 
    // perform file uploading... 
} 
0

唯一的方法,我知道如何做到這一點是使用某種表。這也很好,因爲它可以讓你比FileUploadN擁有更好的名字(沒有編譯過這段代碼,所以可能會有拼寫錯誤,但你得到了要點)。

FileUpload[] uploads = new FileUpload[] {FileUpload1, FileUpload2, FileUpload3, FileUpload4}; 
foreach (FileUpload upload in uploads) 
{ 
    if (uploads.HasFile) 
    { 
    } 
} 

有意義嗎?

+0

感謝我得到了這份工作完成。 – user614946

0

還有一個辦法讓多個文件

 HttpFileCollection Files = Request.Files; 
     for (int i = 0; i < Files.Count; i++) 
     { 
      HttpPostedFile PostedFile = Files[i]; 
      if (PostedFile.ContentLength > 0) 
      { 
       //upload file 
      } 
     } 

MSDN上的完整文章是here

相關問題