Мне нужно серверное большее количество Pdf, для которого требуется авторизация, чтобы иметь возможность загружать.Не разрешено загружать локальный ресурс из папки App_Data
Я прочитал, что желательно разместить их в папке App_Data
.
Я создал три папки в папку App_Data
:
> SetOne
> SetTwo
> SetThree
мне нужно передать эти файлы на мой взгляд.
Контроллер
var files = Directory.EnumerateFiles(Server.MapPath("~/App_Data/SetOne"));
return View(files);
Просмотр
<ul>
@foreach (var fullPath in Model)
{
var fileName = Path.GetFileName(fullPath);
var downloadPath = @Path.GetDirectoryName(fullPath) + "\\" + @fileName;
<li><a href="@downloadPath">@fileName</a></li>
}
</ul>
Используя код выше, я могу перечислить содержимое папки SetOne в неупорядоченном списке, однако при попытке см. один из Pdf, которые я вижу:
Не разрешается загружать локальный ресурс: файла: /// B: /Development/MyProject/MyProject.Web/App_Data/SetOne/sampleOne.pdf
Как я могу позволить приложению, чтобы предоставить доступ к этим файлам ?
редактировать
Я также попытался создать новую папку с именем PDFS и перемещения документов на это, но я получаю то же сообщение об ошибке при просмотре в хромовых Дев инструментов.
Должен ли я использовать Http-обработчик для этой задачи?
Так что лучший способ сервера PDF с сервера ? – JsonStatham
Вы должны поместить PDF в папку, доступную пользователю. Затем вам нужно сопоставить путь к серверу, чтобы получить правильный URL-адрес. –
. Я разместил pdf-файл в папке PDF, и я написал метод FileResult, который называется «загрузка», это возвращает файл, однако теперь возможно, что пользователи могут напрямую просматривать мой PDF-файл папку и помочь себе? – JsonStatham