ASP.NET PhysicalFileProvider 在 Startup.cs 中不可用

Ric*_*ard 2 c# asp.net iis nuget owin

我正在尝试使用实体框架在 ASP.NET 4.6 Web 应用程序 MVC 5.2.3 中提供静态文件。我正在关注教程。

我收到编译器错误:

找不到类型或命名空间名称“PhysicalFileProvider”(您是否缺少 using 指令或程序集引用?)

似乎Microsoft.Extensions.FileProviders实际上并未使用 using (它在 Visual Studio 中显示为灰色。

我试过导入各种程序集,但没有任何运气。我不是 .NET 开发人员,任何帮助将不胜感激。

using System;
using System.IO;
using System.Threading.Tasks;
using Microsoft.Extensions.FileProviders;
using Microsoft.Extensions.Primitives;
using Microsoft.Owin;
using Microsoft.Owin.StaticFiles;
using Microsoft.Extensions.Configuration;

using Owin;

[assembly: OwinStartup(typeof(Monica.Startup))]

namespace Monica
{
    public partial class Startup
    {

        public void Configuration(IAppBuilder app)
        {
            app.UseStaticFiles(); // For the wwwroot folder

            app.UseStaticFiles(new StaticFileOptions()
            {
                FileProvider = new PhysicalFileProvider(
                    Path.Combine(Directory.GetCurrentDirectory(), @"MyStaticFiles")),
                RequestPath = new PathString("/StaticFiles")
            });
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

pij*_*olu 5

您应该安装 nugget 包:

Microsoft.Extensions.FileProviders.Physical

右键单击项目 -> 管理 Nugget 包 -> 浏览 -> Microsoft.Extensions.FileProviders.Physical -> 安装。

之后应该可以使用 using 语句。