AJAX AjaxFileUpload контролирует получение списка загруженных файлов при отправке веб-формы ASP.NET

У меня есть веб-форма ASP.NET для получения имени, адреса электронной почты и загруженных файлов. Добавлен элемент управления AjaxFileupload ( ASP.NET AJAX Toolkit v16.1, который не следует путать с элементом управления AsyncFileupload или ASP.NET FileUpload), который работает нормально, поскольку позволяет загружать файлы без какой-либо обратной передачи, избегая отправки одной и той же формы более чем одной время (см. пример здесь: Загрузка файлов и изображений без страницы PostBack / Обновить / Обновить в ASP.Net -)

Элемент управления работает нормально, он сохраняет файлы, но проблема в том, что, как только поля в форме проверены, файлы загружены, и я, наконец, готов отправить форму. Я не могу получить путь к загруженному файлу файлы, потому что элемент управления AjaxFileUpload не имеет никакого способа сделать это:(

Другими словами, вы не можете просто вызвать AjaxFileUpload.GetListOfUploadedFiles() и получить ArrayList загруженных файлов. Я хочу сохранить все поля в записи, имени, электронной почте и всех именах файлов, загруженных этим пользователем, чтобы я мог использовать эти данные для составления отчета.

Protected Sub OnUploadComplete(sender As Object, e As AjaxFileUploadEventArgs)
   Dim fileName As String = Path.GetFileName(e.FileName)
   Me.AjaxFileUpload1.SaveAs(Server.MapPath("/output/" & fileName))
End Sub

Я пытался поймать имена файлов там, но как только один файл был сохранен, и вы оставили Sub, данные исчезли, поэтому вот мой вопрос:

Как можно получить строку со всеми файлами, перечисленными в разделе "загруженные файлы" элемента управления AjaxFileUpload, чтобы при отправке формы я мог получить все эти имена файлов?

Я видел кое-что связанное с этим, используя Javascrit для изменения поведения файлов в очереди здесь: AjaxFileUpload автоматически загружает файл после выбора, возможно, есть что-то вроде "Sys.Extended.UI.AjaxFileUpload.prototype._QueuedFiles", которое я могу использовать, чтобы получить имя файла список на момент отправки формы.

Спасибо!

PS: Сохранить двоичные файлы на БД не может быть и речи, потому что это означает огромное увеличение размера базы данных, так как будет несколько пользователей, каждый из которых будет загружать файлы размером около 6 МБ каждый, таким образом увеличивая размер БД.

0 ответов

Другие вопросы по тегам