Ошибка AjaxfileUpload
Я пытаюсь реализовать простой элемент управления загрузкой ajaxtoolkit и каждый раз, когда я нажимаю "Загрузить", все, что я получаю, является ошибкой. Я попытался установить точку останова в функции "AjaxFileUpload1_UploadComplete", но ее даже не уволят.. (может быть, потому что загрузка еще не завершена?) Что мне делать, чтобы заставить ее работать?
вот ошибка:
![enter image description here]()
вот мой 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);
}
Ответы
Ответ 1
Это происходило со мной, и я сделал две вещи, чтобы исправить это:
1) Обновите файл web.config вашего сайта, чтобы он содержал следующие записи:
<system.web>
<httpHandlers>
<add verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit" />
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
<add name="AjaxFileUploadHandler" verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit" />
</handlers>
</system.webServer>
2) Если страница, которую вы загружаете, находится внутри папки с ее собственным web.config с запретом анонимных правил авторизации, убедитесь, что вы добавили разрешение для AjaxFileUploadHandler следующим образом:
<location path="AjaxFileUploadHandler.axd">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>