WebRootPath 不是 ASP.NETCORE 托管的一部分?

WebRootPath not part of ASP.NETCORE hosting?

我正在尝试帮助 return 我的环境路径,但是我遵循的教程似乎已经过时,我的主要问题是如果 WebRootPath 可以在我的代码中替换为 ContentRootPath。

如果我的问题看起来有点初级,我深表歉意,有什么地方可以让我获得关于迁移到更新版本的 .NET 的快速说明,据我所知,它现在被称为。我将我的代码与下面的错误消息链接起来。

提前致谢!!

if (model.ImageUrl != null && model.ImageUrl.Length > 0)
                {
                    var uploadDir = @"images/employee";
                    var fileName = Path.GetFileNameWithoutExtension(model.ImageUrl.FileName);
                    var extension = Path.GetExtension(model.ImageUrl.FileName);
                    var webRootPath = _hostingEnvironment.WebRootPath;

错误信息:

Severity Code Description Project File Line Suppression State Error CS1061 'HostingEnvironment' does not contain a definition for 'WebRootPath' and no accessible extension method 'WebRootPath' accepting a first argument of type 'HostingEnvironment' could be found (are you missing a using directive or an assembly reference?) Paycompute C:\Projects\PaycomputeApp\Paycompute\Controllers\EmployeeController.cs 77 Active

所以我做了一些挖掘,只是把它留给可能 运行 遇到同样问题的其他初学者。
HostingEnvironment 接口在 3.0 及更高版本中已被弃用,这可以通过更新您正在使用的接口来解决。

我在下面演示这个!!合并以下 using 语句。

using Microsoft.AspNetCore.Mvc;

然后像这样更改合并的界面(至少在我的用例中)

 private readonly IWebHostEnvironment _hostingEnvironment;

    public EmployeeController(IEmployeeService employeeService, IWebHostEnvironment hostingEnvironment)