我正在开发一个图像上传模块并AsyncFileUpload
在页面中有一个控件,我相信(一旦用户浏览文件路径)将文件保存在临时文件中。缓冲区,直到您调用该方法AsyncFileUpload.SaveAs(filePath)
,
在我的情况下,我想在使用提交完整表单时调用此方法,(目的是如果用户浏览了图像,然后决定取消操作,则文件不能存储在服务器上),
所以相反,我试图在AsyncFileUpload.SaveAs(filePath)
内部调用,protected void btnUpload_Click(object sender, EventArgs e)
但如果我这样做,它会给出 NullReferenceException 是由用户代码导致的。
我相信这是因为AsyncFileUpload
触发了一个回发事件,因此当我再次调用它时它是空的。
可能我需要在运行时从临时缓冲区存储/访问文件。
任何建议将不胜感激。
StackTrace 显示:
在 AjaxControlToolkit.AsyncFileUpload.SaveAs(String fileName) at _default.btnUpload_Click(Object sender, EventArgs e) in d:\Projects\ImageRepository_default.aspx.cs:line 27 at System.Web.UI.WebControls.Button.OnClick(EventArgs e ) 在 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) 在 System.Web.UI.Page 的 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)。在 System.Web.UI.Page.ProcessRequestMain 的 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) 的 RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)