Я могу думать только об одном способе сделать это.Добавьте HTTP-заголовок (обновление), который перенаправляет браузер на ссылку для загрузки после определенного интервала.Поскольку ссылка будет возвращать ответ в виде вложения, она не должна обновлять страницу браузера, а должна начинать загрузку.В разделе head
вашего представления добавьте:
<meta http-equiv="refresh" content="30; ,URL=@Model.DownloadURL">
Предполагается, что ваша модель содержит URL-адрес для загрузки в свойстве модели DownloadURL.Загрузка должна начаться через 30 секунд.
Кроме того, AJAX может помочь отобразить начальную страницу загрузки, но вы не можете загружать файлы через AJAX.Это занимает полный запрос, так как XMLHttpRequest не обрабатывает Content-Disposition: attachment
.