Я внедряю систему, в которой пользователь может загружать любое количество документов практически любого типа файла, которые будут связаны с «рабочим элементом».По сути, пользователь может создать задачу, известную как рабочий элемент, и прикрепить к ней любое количество файлов.Я реализовал компоненты для обработки самого рабочего элемента, загрузки файлов, управления файлами (редактирования и удаления), но у меня возникают проблемы с просмотром файлов.
Когда пользователь загружает файл,Файл сохраняется в сетевой папке.Все пользователи имеют доступ на чтение ко всем файлам в каталоге.Путь к файлу сохраняется в базе данных, доступ к которой осуществляется через Entity Framework.
Моя текущая проблема заключается в том, что я не могу найти общий способ открыть эти файлы.Я реализовал контроллер для потоковой передачи файла в браузер, но это работает только для определенных типов файлов.
В частности, я пытался:
Создание гиперссылки и добавление пути к файлу в теге href, но это пытается открыть путь к файлу относительно приложениярасположение на веб-сервере.По сути, он добавляет путь к файлу к текущему URL.
Пример:
href="@Path.Combine(item.PATH, item.NAME)"
Вывод:
href="\\server\myapp\item\3\test.jpg"
- Но когда я нажимаю на этот якорь, он открывается относительно моего текущего URL.
Создание контроллера для потоковой передачи файла через WebClient, но это работает только для определенных типов файлов.
Итак, есть ли способ открыть какой-либо файл из MVC, либо через браузер, либо открыв его на клиентском компьютере?