4

有没有一种好方法可以根据用户偏好在 asp.net mvc 中动态更改 MasterPage 和/或 .css?

我知道我可以按如下方式更改主名称:

return View("viewName", "master-name", oModel)

并且视图可能使用不同的 contentPlaceHolder 但这需要更改每个控制器+动作。

我不得不假设有比这更好的方法。

4

2 回答 2

3

我有一个更简单的方法:

return View("View", getMasterName());

在我的主控制器中,我有:

protected string getMasterName() {
    return (Request.QueryString["tb"] == null) ? null : "Other_Master";
}

我用它来显示一个不同的模板,以防出现thickbox 弹出窗口,或者如果javascript 不工作并且控制器在没有thickbox 的情况下加载。

于 2009-07-15T19:20:07.057 回答
0

这是有趣的阅读http://developmentalmadness.blogspot.com/2009/06/aspnet-mvc-discover-masterpagefile.html

于 2009-07-15T17:57:47.473 回答