ASP.NET 5(vNext)代码中的环境标记助手

时间:2015-12-08 18:30:54

标签: asp.net asp.net-core-mvc tag-helpers

我试图确定如何在任何类文件中获取此标记助手的功能:

<environment names="Development"> </environment>

我了解环境信息可通过 IHostingEnvironment 对象获得,但我不确定如何在没有依赖注入的情况下抓取它。

是否可以从任何类中获得DI注册服务实现?

在这个特定情况下,我正在编写一些HtmlHelper扩展方法,但我认为这个问题在更广泛的意义上适用。

1 个答案:

答案 0 :(得分:1)

因此,从IHtmlHelper扩展方法的内部,这可以工作:

IHostingEnvironment env = HtmlHelper.ViewContext.HttpContext.RequestServices.GetService(typeof(IHostingEnvironment)) as IHostingEnvironment;

是否有更通用的方法来获取服务实例而不依赖于依赖注入?