2011-09-11 70 views
5

是否有可能从ControllerContextViewEngineCollection获取当前使用的ViewEngine?我希望能够说出以下ViewEngines.GetCurrent。我知道我可以对该方法进行扩展,但我不知道如何实现这一点。ASP.net MVC获取当前视图引擎

+3

只是出于好奇:你需要什么? – magnattic

+0

我正在扩展Scott Hanselmann发布的移动视图引擎。现在实施的方式不是很可扩展。我正在为该视图引擎开发一个智能退出系统(以及其他一些改进),并且我希望启用/禁用当前使用的视图引擎的移动功能) – Guldan

+0

在控制器的上下文中,当前没有使用了视图引擎。直到实际渲染时间才会解决问题。 – bzlm

回答

4

您可以使用ViewEngineCollection来查找与特定视图关联的ViewEngine

ViewEngineResult result = ViewEngines.Engines.FindView(controllerContext, 
                 "myView","myMaster"); 
IViewEngine viewEngine = result.ViewEngine; 

请参阅这里了解更多info

相关问题