我希望能够根据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文件或类似文件中设置它?