Linux .net核心为何MVC项目从root / wwwroot路径而不是项目路径加载静态文件

时间:2018-08-07 08:52:18

标签: c# linux model-view-controller path .net-core

对于在Linux机器上运行.net核心MVC项目的项目路径感到困惑。

成功启动项目后,他正在/ home / admin / bla / wwwroot路径中生成静态csv文件。 (例如/home/admin/bla/wwwroot/test.csv)

在那之后,我尝试下载此文件,但是然后从root / wwwroot目录(为什么?)而不是从运行项目的/ home / admin / bla / wwwroot来解析静态文件的项目?这是我的Startup.cs:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
            {
                if (env.IsDevelopment())
                {
                    app.UseBrowserLink();
                    app.UseDeveloperExceptionPage();
                }
                else
                {
                    app.UseExceptionHandler("/Home/Error");
                }
                app.UseStaticFiles();
                //app.UsePathBase("/home/admin/bla");
                app.UseMvc(routes =>
                {
                    routes.MapRoute(
                        name: "default",
                        template: "{controller=Home}/{action=Index}/{id?}");
                });
            }

这是我的Program.cs:

public class Program
    {
        public static void Main(string[] args)
        {
            BuildWebHost(args).Run();
        }

        public static IWebHost BuildWebHost(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
                .UseStartup<Startup>()
                .UseUrls("http://localhost:5050")
                .Build();
    }

0 个答案:

没有答案