C# ASP.NET Core 中的 IWebHostEnvironment 接口有哪些作用?


IWebHostEnvironment 提供有关应用程序运行所在的 Web 托管环境的信息。

属于 Microsoft.AspNetCore.Hosting 命名空间

IWebHostEnvironment 接口需要注入 Controller 中的依赖,然后再在整个 Controller 中使用。

IWebHostEnvironment 接口有两个属性。

  • WebRootPath − www 文件夹的路径(获取或设置包含可通过 Web 服务的应用程序内容文件的文件的绝对路径)
  • ContentRootPath − 包含所有应用程序文件的根文件夹路径(获取或设置指向 WebRootPath 的 IFileProvider。)

用法

我们需要导入命名空间

using Microsoft.AspNetCore.Hosting;

在下面的示例中,IWebHostEnvironment 注入 Controller 并分配给私有属性 Environment,然后用于获取 WebRootPath 和 ContentRootPath。

示例

public class HomeController : Controller{
   private IWebHostEnvironment Environment;
   public HomeController(IWebHostEnvironment _environment){
      Environment = _environment;
   }
   public IActionResult Index(){
      string wwwPath = this.Environment.WebRootPath;
      string contentPath = this.Environment.ContentRootPath;
      return View();
   }
}

更新于: 2020-9-25

5K+ 浏览

开启你的 职业

完成课程并获得认证

开始
广告