IwebHostEnvironment 接口

IwebHostEnvironment interface

我在我的代码中使用了 IwebHostEnvironment 但我有一个问题.. IWebHostEnvironment 是一个接口,用于提供有关托管的信息并可以从中获取有关路径的数据 为什么我从中获取一个实例并注入它就像我注入一个_db而不注册它一样 ConfigureServices 方法就像我注册 Db 上下文一样?!

 public class ProductController : Controller
{
    private readonly App_DbContext _db;
    private readonly IWebHostEnvironment _webHostEnvironment;
    public ProductController(App_DbContext db,IWebHostEnvironment webHostEnvironment)
    {
        _db = db;
        _webHostEnvironment = webHostEnvironment;
    }
    public IActionResult Index()
    {
        IEnumerable<Product> products= _db.Product;
        return View(products);
       
    }

这是配置服务的方法

public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<App_DbContext>(options =>
        options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
        services.AddControllersWithViews();
    }

同意@Nkosi,可以参考this sectionIWebHostEnvironment是framework-registered服务之一