如何在库项目中获取对 IWebHostEnvironment 的引用? (也在 static class :()

How do I get a reference to IWebHostEnvironment inside a library project? (Also inside static class :()

我需要使用 Server.MapPath。由于图书馆项目没有 Startup.cs 我无法以正常方式申请。

首先在Startup.cs,

注册HttpcontextAccessor服务
services.AddHttpContextAccessor();

然后在 class,

private static HttpContext _httpContext => new HttpContextAccessor().HttpContext;
private static IWebHostEnvironment _env => (IWebHostEnvironment)_httpContext.RequestServices.GetService(typeof(IWebHostEnvironment));

现在您可以在静态 class 和静态方法中访问它。

这对我有用。如果有人需要。