我需要根据当前文化更改使用的母版页。我可以通过覆盖View,OnResultExecuting或OnActionExecuting来相当容易地做到这一点,这适用于我的大多数页面。
我的问题是我有几个不使用母版页的视图,我显然不想为这些视图设置母版页。如果视图有母版页,我在查找代码时遇到问题 - 在所有情况下,masterName都是null或者是emtpty字符串。
有什么想法吗?
答案 0 :(得分:3)
试试这个......
public ActionResult Home()
{
MyModel model = new MyModel{MasterPage="SomeMaster"};
returnView(model);
}
<%@ Page Title="" Language="C#" MasterPageFile="/Views/Shared/<%= model.MasterPage %>" Inherits="System.Web.Mvc.ViewPage" %>
这样,如果您没有定义母版页,则不会更改它:)