MVC 2应用程序 - 设置动态母版页

时间:2012-01-13 11:40:39

标签: c# asp.net-mvc-2 dynamic master-pages global-asax

我希望能够根据MVC 2应用程序中的URL设置母版页。

我在我的视图中插入了C#代码,而且我已经做到了这一点 -

<script language="C#" runat="server">
    protected void Page_PreInit(object sender, EventArgs e)
    {
        var hostName = HttpContext.Current.Request.Url.Host.ToString();
        if (hostName == "localhost")
        {
            this.MasterPageFile = "~/Views/Shared/Site.Master";
        }
        else
        {
            this.MasterPageFile = "~/Views/Shared/Administrator.Master";
        }
    }
</script>

上面的IF语句用于测试,实际上我将从数据库中提取母版页名称,但这样就可以了。

如果可能,我显然不会将上面的代码插入到每个视图中。是否可以从global.asax文件或类似文件中设置它?

0 个答案:

没有答案