Фон:
Существует приложение asp. Net MVC, которое я сейчас воссоздаю без использования MVC.
* 1006. * В приложении MVC элементы
<a>
, которые позволяют пользователям загружать документ, выглядят следующим образом:
<a href="/api/file/2187/filter.jpg" target="_blank">download</a>
, и это работает, когда я нажимаю кнопку загрузки, поскольку я мог бы использовать метод, подобный приведенному ниже в MVC:
public async Task<IActionResult> Download(string path)
{
var memory = new MemoryStream();
using (var stream = new FileStream(path, FileMode.Open))
{
await stream.CopyToAsync(memory);
}
memory.Position = 0;
return File(memory, GetContentType(path), Path.GetFileName(path));
}
Обратите внимание, что на странице есть таблица HTML с 500+ строками, некоторые данные имеют файл для загрузки, и только для этих строк ссылка href существует в указанном файле. c cell.
Здесь, когда я пытаюсь посетить http://myapplication/api/file/2187/filter.jpg, я вижу, что ссылка существует.
Проблема:
Я не мог использовать тот же метод загрузки в. net Только приложение, потому что IActionResult
ищет пространство имен Microsoft.AspNet.MVC
. Попытался установить элемент <a>
в моем приложении asp. net, как показано ниже:
<a href="\\myfolder\myapp\file\2187\filter.jpg" target="_blank">download</a>
Однако это не работает в Chrome, выдавая ошибку: Not allowed to load local resource
Я не смог найти способ создать ссылку на http
для файла, как в приложении MVC. Как включить ссылку в приложении, например: http://myapplication/api/file/2187/filter.jpg
для использования в href?
Примечание: Загружаемые файлы находятся в общей папке, не могут быть перемещены их в мой локальный P C или не можете импортировать их внутри проекта и т. д. c ..
Примечание 2: После загрузки не должно быть страницы-refre sh файл.
Любая помощь или совет должны быть оценены! Спасибо.