Единственная встроенная реализация интерфейса IWebHostEnvironment
является внутренней в ASP. NET Core 3.x:
internal class HostingEnvironment : IHostingEnvironment, Extensions.Hosting.IHostingEnvironment, IWebHostEnvironment
{
public string EnvironmentName { get; set; } = Extensions.Hosting.Environments.Production;
public string ApplicationName { get; set; }
public string WebRootPath { get; set; }
public IFileProvider WebRootFileProvider { get; set; }
public string ContentRootPath { get; set; }
public IFileProvider ContentRootFileProvider { get; set; }
}
Таким образом, если вам нужно по какой-либо причине создать экземпляр класса, который реализует интерфейс, вы можете просто скопировать приведенный выше код в свой проект и, возможно, изменить имя класса. Затем вы можете создавать его экземпляры в соответствии с вашими требованиями.
Каркас в любом случае зависит только от интерфейса.