FileUpload1.HasFile总是返回false

我正在使用ASP.net文件上传控件上传文件。 我的FileUpload1.HasFile总是返回false。

if (FileUpload1.HasFile) { DBOperations db = new DBOperations(); try { FileUpload1.SaveAs(Server.MapPath("~/uploadedImages/" + db.uploadImage(System.IO.Path.GetExtension(FileUpload1.FileName)) + System.IO.Path.GetExtension(FileUpload1.FileName))); } catch (Exception Ex) { String he = Ex.Message; } } 

我正在使用以下ASP.net代码

        

我甚至尝试删除AsyncPostBackTrigger,甚至删除了整个asp:updatePanel,然后我的FileUpload1.HasFile总是返回false。

ASP.NET的“AJAX”事件不支持UpdatePanels中的文件上传。 将该触发器更改为PostBackTrigger (导致整页加载)或使用其他内容上传文件。

为UpdatePanel添加触发器

    

这将在单击上载按钮时强制回发。

同时将以下行添加到Page_Load

 Page.Form.Attributes.Add("enctype", "multipart/form-data"); 

我知道这个post如果老了,但是我发现如果文件是空的[0 KB]那么它也会返回false。 文件中必须有一些东西才能让.HasFile承认它。