![](/img/trans.png)
[英]Select multiple files at a time using FileUpload control in asp.net
[英]Why does asp.net fileupload control corrupt files?
我正在使用FileUpload控件上傳多個文件,並且成功完成,但是問題是當我上傳后下載文件時,文件損壞了,例如.pdf,.docx等。檢查后發現問題出在上傳控件中,因為我檢查了文件上載並嘗試打開它后在服務器目錄中找到文件,但文件拋出錯誤,即文件已損壞。
我檢查了服務器目錄中的每個上載文件,該文件也在那里不起作用,所以問題是上載錯誤
protected void UploadIncomingLetterMaterial(int CaseLetterID)
{
if (FileUpload1.HasFiles)
{
foreach (HttpPostedFile uploadedfiles in FileUpload1.PostedFiles)
{
string fileName = Path.GetFileName(uploadedfiles.FileName);
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/SiteImages/") + fileName);
mngUploadedMaterialIncomingLetters.InsertUploadedMaterialIncomingLetters(fileName, "", CaseLetterID);
}
更新:
問題是,當我上傳多個文件時,它將使所有文件的大小相同。 與循環中第一個文件的大小相同。
看起來這是問題所在:
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/SiteImages/") + fileName);
這將多次保存第一個文件-您正在嘗試將當前指的文件保存為uploadedfiles
(應為單數)。 看來您應該具備:
foreach (HttpPostedFile uploadedFile in FileUpload1.PostedFiles)
{
string fileName = Path.GetFileName(uploadedFile.FileName);
uploadedFile.SaveAs(Server.MapPath("~/SiteImages/") + fileName);
mngUploadedMaterialIncomingLetters.InsertUploadedMaterialIncomingLetters(fileName, "", CaseLetterID);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.