首页 > 解决方案 > 请求有关 IWebHostingEnvironment 错误 CS0236 的帮助

问题描述

我的开发环境是 VS 2019 社区(版本 16.4.5)中的 ASP .Net Core 3.1 Razor Pages(非 MVC)。

我正在使用以下代码显示 wwwroot/documents 目录中的文件:

public class IndexModel : PageModel
{
    private readonly ApplicationDbContext _context;
    private readonly IWebHostEnvironment _env;

    public IndexModel(ApplicationDbContext context, IWebHostEnvironment hostingEnvironment)
    {
        _context = context;
        _env = hostingEnvironment;
    }

    string webRootPath = _env.WebRootPath;
    string docsPath = Path.Combine(webRootPath, "documents");

    public void OnGet()
    {
        var files = Directory.GetFiles(docsPath, "*.*", SearchOption.TopDirectoryOnly); 
    }
}

我收到错误 CS0236,字段初始化程序无法引用非静态字段、方法或属性“IndexModel._env”。

错误显示在这一行:

字符串 webRootPath = _env.WebRootPath;

_.env

任何帮助表示赞赏

标签: c#asp.net-corerazor.net-corerazor-pages

解决方案


推荐阅读