2017-10-17 113 views
0

的价值上的ASP.NET核心启动文件我有以下几点:获取Web根目录

public void ConfigureServices(IServiceCollection services) {  
    services.AddMvc(); 
    services.AddPOLocalization(x => x.ResourcesPath = "wwwroot/assets"); 
} 

如何对Web根目录,而不是硬编码(wwwroot)中获得规定的价值?

回答

0

有一个IHostingEnvironment.WebRootPath属性:

获取或设置对包含该网站可投放的应用程序内容文件的目录的绝对路径。

您可以从DI容器获得实例:

private IHostingEnvironment _env; 

public Startup(IConfiguration configuration, IHostingEnvironment env) 
{ 
    // use env.WebRootPath here or variable in private field for future using 
    // (like in ConfigureServices method) 
    _env = env; 
    ... 
} 


public void ConfigureServices(IServiceCollection services) 
{  
    services.AddMvc(); 
    services.AddPOLocalization(x => 
     x.ResourcesPath = System.IO.Path.Combine(_env.WebRootPath, "assets")); 
}