Как использовать статический контент в .NET Core из расположения сервера? - PullRequest
0 голосов
/ 21 июня 2019

В моем веб-приложении .NET Core я хочу загружать файлы PDF и отображать их позже. Я хочу хранить эти файлы в папке вне папки проекта на сервере Windows 2016 (например, C: \ files).

Сначала я подумал, что мог бы использовать виртуальный каталог, указывающий на C: \ files на сервере IIS, но кажется, что это больше невозможно в .NET Core.

Согласно этому сообщению в блоге (https://www.jauernig -it.de / asp-net-coreiis-serve-content-from-a-file-share / ), вместо этого следует использовать UseFileServer () , Можно ли настроить UseFileServer с папкой вне проекта?

Вот что я пробовал:

По моему Startup.cs

app.UseFileServer(new FileServerOptions
        {
            FileProvider = new 
PhysicalFileProvider(@"\\servername\C:\folder"),
            RequestPath = new PathString("/Uploads"),
            EnableDirectoryBrowsing = false
        });

Для тестирования я сохранил изображение внутри папки, а затем попытался:

<img src="/Uploads/image.jpg" />

К сожалению, изображение не отображается. Я что-то упустил?

1 Ответ

1 голос
/ 24 июня 2019

Проблема в вашем коде заключается в том, что \\servername\C:\folder ожидает каталог с именем folder на общем диске C:, который расположен на удаленном сервере с именем servername.

Но в вашем случае папка находится на той же машине, что и IIS. Так что я был бы только C:\folder.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...