Tôi có điều khiển FileUpload (FileUpload1) trên biểu mẫu web của mình, cùng với nút "Sumbit", nhãn và trường ẩn chứa UserID. Tôi có đoạn mã sau trong sự kiện nhấp chuột của nút:
đường dẫn chuỗi = Server.MapPath("~/userfiles/");
if (FileUpload.HasFile)
{
thử
{
FileUpload1.SaveAs(đường dẫn + UserID.Value + "/image.jpg");
}
catch
{
Label1.Text = "* không thể tải tập tin lên";
Nhãn1.Visible = true;
}
}
Nếu tôi tải lên một tập tin thực tế thì nó hoạt động tốt. Tuy nhiên, nếu tôi nhập tên tệp không tồn tại vào hộp văn bản của FileUpload (ví dụ: "c:\a.jpg", tên này không tồn tại trên máy tính của tôi) rồi nhấp vào nút Sumbit, HasFile vẫn trả về true . Ngoài ra, SaveAs() không đưa ra bất kỳ ngoại lệ nào, đây là hàm void và không trả về giá trị biểu thị thành công hay thất bại. Làm cách nào để biết liệu tệp đã thực sự được tải lên hay chưa?
Chỉ cần kiểm tra nếu nó tồn tại.
if(File.Exists(myFile)){
// nó đã được tải lên.
}
Tôi là một lập trình viên xuất sắc, rất giỏi!