T4MVC和DisplayModeProvider发出完全qulified视图

时间:2015-10-26 21:28:48

标签: t4mvc

我有代码检测用户代理并创建新的显示模式(即"平板电脑"和#34;移动")

DisplayModeProvider.Instance.Modes.Insert(1, new DefaultDisplayMode("mobile") { ContextCondition = (context => GetDeviceType(context.GetOverriddenUserAgent()) == "mobile") });

所以,当我想要返回一个视图时,我只需要

return View("Index")

并且显示模式将追加" Index.tablet.cshtml"或" Index.mobile.cshtml"或者没有" Index.cshtml"对于默认值。

这样做的好处在于,如果用户代理是"移动"并且没有" Index.mobile.cshtml"文件默认为" Index.cshtml"

这很有效但是当使用完全限定的视图名称时,如t4mvc那样,"〜/ Views / Home / Index.cshtml" 显示模式逻辑不会添加平板电脑"或"移动"。

有没有办法让t4mvc只返回" index"而不是完全合格的名字?

或者您对如何解决此问题还有其他建议仍然使用t4mvc?

感谢

1 个答案:

答案 0 :(得分:0)

只需选择return (MVC.YourController.Views.ViewNames.YourView)

即可