Доступ к статическим файлам в ASP.NET Core MVC

103
07 декабря 2019, 08:50

Для статических файлов в проекте ASP.NET Core MVC есть папка wwwroot. Но можно ли использовать файлы (в моем случае изображения), которые лежат в другом месте на диске?

Метод UseDirectoryBrowser позволяет просматривать содержимое каталогов не в папке wwwroot:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDirectoryBrowser();
    }
    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseDirectoryBrowser(new DirectoryBrowserOptions()
        {
            FileProvider = new PhysicalFileProvider(@"C:\Photo"),
            RequestPath = new PathString("/images")
        });
        app.UseStaticFiles();
        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });
    }

Но при этом можно перемещаться по структуре каталогов, но открытие файла изображения выдает ошибку: "Изображение не может быть показано, так как содержит ошибки".

Или приложение ASP.NET Core обязывает помещать все статические файлы только в папку wwwroot?

Answer 1

Разобрался. Если использовать метод UseFileServer, то все работает:

        app.UseFileServer(new FileServerOptions
        {
            EnableDirectoryBrowsing = true,
            FileProvider = new PhysicalFileProvider(@"C:\Photo"),
            RequestPath = new PathString("/images"),
            EnableDefaultFiles = false
        });
READ ALSO
Как реализовать выстрел из гарпуна(хука)?

Как реализовать выстрел из гарпуна(хука)?

Я хочу реализовать выстрел из гарпуна(хука), как в игре Dota 2Чтобы когда Pudge бросал крюк: 1

134
C#. Слишком длинный строковый параметр

C#. Слишком длинный строковый параметр

Заменяю текст в документе wordПока текст короткий передаю в word, всё нормально работает

121
Собственный атрибут

Собственный атрибут

Подскажите как это реализуется, ни разу такого не делалМне надо, перед методом проверять, имеет ли роль пользователя, разрешения на использования...

115
Почему возникает ошибка при загрузке DLL-файла?

Почему возникает ошибка при загрузке DLL-файла?

При попытке загрузить файл с хоста таким образом

108