我试图确定如何在任何类文件中获取此标记助手的功能:
<environment names="Development"> </environment>
我了解环境信息可通过 IHostingEnvironment 对象获得,但我不确定如何在没有依赖注入的情况下抓取它。
是否可以从任何类中获得DI注册服务实现?
在这个特定情况下,我正在编写一些HtmlHelper扩展方法,但我认为这个问题在更广泛的意义上适用。
答案 0 :(得分:1)
因此,从IHtmlHelper扩展方法的内部,这可以工作:
IHostingEnvironment env = HtmlHelper.ViewContext.HttpContext.RequestServices.GetService(typeof(IHostingEnvironment)) as IHostingEnvironment;
是否有更通用的方法来获取服务实例而不依赖于依赖注入?