【发布时间】:2023-03-20 20:25:01
【问题描述】:
我正在尝试实现一个简单的 ajaxtoolkit 文件上传控件,每次单击“上传”时,我得到的都是一个错误。我尝试在“AjaxFileUpload1_UploadComplete”函数中放置断点,但它甚至不会被触发..(可能是因为上传还没有完成?)我应该怎么做才能让它工作?
这是错误:
这是我的 aspx:
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server"
onuploadcomplete="AjaxFileUpload1_UploadComplete" ThrobberID="myThrobber" MaximumNumberOfFiles="10" AllowedFileTypes="jpg,jpeg"/>
</div>
</form>
这是背后的功能:
protected void AjaxFileUpload1_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
string id = "038191904";
Directory.CreateDirectory(Server.MapPath("~/App_Data/" + id + "/scanned_docs/"));
string filePath = "~/Member_Data/" + id + "/images/";
string path = filePath + e.FileName;
AjaxFileUpload1.SaveAs(Server.MapPath(filePath) + e.FileName);
//db1.insert_pic_slide(id, path);
}
【问题讨论】:
-
你得到什么错误?
-
我添加了一张图片,查看编辑
-
如果我没记错的话,这个控件会在 UploadComplete 事件触发之前将文件写入临时文件夹。确保运行 IIS 应用程序池的帐户对运行代码的虚拟目录具有写入权限。
-
谢谢,但我该怎么做呢?
-
如果你不能让它在本地运行,那可能不是问题——如果它在本地运行但不在你的服务器上,这可能是原因。我建议从这里下载整个演示项目ajaxcontroltoolkit.codeplex.com/SourceControl/…