如何在没有控制器的 Razor 页面中找到 wwwroot 的物理路径?

DJ5*_*000 7 c# server.mappath wwwroot asp.net-core-2.0 razor-pages

我需要在列表中创建文件列表,这曾经很容易......但在 Asp.Net Core 2 Razor 页面上则不然。我找不到一种方法来获取“wwwroot”内“Poems”的物理路径。我发现很多例子使用IHostingEnvironment但总是在控制器中。但我没有控制器,不需要控制器,只需页面和后面的代码..

哦,我多么想念 WebForms!

没有控制器的 Razor Page 的解决方案是什么?

提前致谢。

mnu*_*sir 5

您可以使用 IWebHostEnvironment 类。代码块如下:

private readonly IWebHostEnvironment _webHostEnvironment;

        public HomeController(
            IWebHostEnvironment webHostEnvironment)
        {
            _webHostEnvironment = webHostEnvironment;
        }

public IActionResult Index()
        {
            string rootPath = _webHostEnvironment.WebRootPath
            return View();
        }     
Run Code Online (Sandbox Code Playgroud)