OWIN 的 app.usestaticfiles 和 app.usefileserver 有什么区别

Abd*_*yed 4 c# asp.net-web-api owin visual-studio-2017

我想知道 OWIN 的这两段代码有什么区别。

在我看来,他们正在做同样的工作。

1.

 string root = AppDomain.CurrentDomain.BaseDirectory;
            var physicalFileSystem = new PhysicalFileSystem(Path.Combine(root, "wwwroot"));
            var options = new FileServerOptions
            {
                RequestPath = PathString.Empty,
                EnableDefaultFiles = true,
                FileSystem = physicalFileSystem
            };
            options.StaticFileOptions.FileSystem = physicalFileSystem;
            options.StaticFileOptions.ServeUnknownFileTypes = false;

            app.UseFileServer(options);
Run Code Online (Sandbox Code Playgroud)

2.

    app.UseStaticFiles("wwwroot");
Run Code Online (Sandbox Code Playgroud)

Mar*_*rco 5

IAppBuilder.UseFileserver组合UseStaticFiles UseDefaultFiles,但UseDirectorybrowser默认情况下不是。

这意味着:

app.UseFileServer(enableDirectoryBrowsing: true); 
Run Code Online (Sandbox Code Playgroud)

实现上述所有功能,同时

app.UseFileServer();
Run Code Online (Sandbox Code Playgroud)

只启用静态文件和默认文件,但不启用目录浏览。相反,这意味着IAppBuilder.UseStaticFiles仅使网络服务器能够提供静态文件,但不对默认文档或目录浏览做出任何假设。