using System.IO; using Microsoft.AspNet.Builder; using Microsoft.AspNet.FileProviders; using Microsoft.AspNet.Hosting; using Microsoft.AspNet.Http; using Microsoft.AspNet.StaticFiles; namespace Yavsc { public partial class Startup { public static string UserFilesDirName { get; private set; } public static FileServerOptions UserFilesOptions { get; private set; } public void ConfigureFileServerApp(IApplicationBuilder app, SiteSettings siteSettings, IHostingEnvironment env) { UserFilesDirName = Path.Combine( env.WebRootPath, siteSettings.UserFiles.DirName); var rootInfo = new DirectoryInfo(UserFilesDirName); if (!rootInfo.Exists) rootInfo.Create(); UserFilesOptions = new FileServerOptions() { FileProvider = new PhysicalFileProvider(UserFilesDirName), RequestPath = new PathString("/" + siteSettings.UserFiles.DirName), EnableDirectoryBrowsing = env.IsDevelopment() }; app.UseFileServer(UserFilesOptions); app.UseStaticFiles(); } } }