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)
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仅使网络服务器能够提供静态文件,但不对默认文档或目录浏览做出任何假设。