Asp.net mvc 如何在ASP.NET MVC RC 1.0中使用动态母版页

Asp.net mvc 如何在ASP.NET MVC RC 1.0中使用动态母版页,asp.net-mvc,master-pages,Asp.net Mvc,Master Pages,我不知道如何在ASP.NET MVC RC 1.0中使用动态母版页。请帮忙 有一个合理的可维护解决方案,讨论了如何创建公共站点主控子代,并将其用于您自己的所有视图。还有一个CodeProject条目,看起来很有趣,它使用了自定义的ViewEngine 我也需要这样做,但我还没有尝试过这两种解决方案,所以我还不知道哪一种总体上更好。在我看来,动态蒙皮是MVC的一项关键功能,特别是为了满足用户个性化的需要。有一个合理的可维护解决方案,讨论了如何创建公共站点主控子代,并将其用于您自己的所有视图。还有一

我不知道如何在ASP.NET MVC RC 1.0中使用动态母版页。请帮忙

有一个合理的可维护解决方案,讨论了如何创建公共站点主控子代,并将其用于您自己的所有视图。还有一个CodeProject条目,看起来很有趣,它使用了自定义的ViewEngine


我也需要这样做,但我还没有尝试过这两种解决方案,所以我还不知道哪一种总体上更好。在我看来,动态蒙皮是MVC的一项关键功能,特别是为了满足用户个性化的需要。

有一个合理的可维护解决方案,讨论了如何创建公共站点主控子代,并将其用于您自己的所有视图。还有一个CodeProject条目,看起来很有趣,它使用了自定义的ViewEngine


我也需要这样做,但我还没有尝试过这两种解决方案,所以我还不知道哪一种总体上更好。在我看来,动态蒙皮是MVC的一项关键功能,特别是为了满足用户个性化需求。

使用View()helper方法时,可以指定母版页的名称:

return View("About", "AlternateMaster", model);
AlternateMaster将解析为~/Views/Shared/AlternateMaster.master


使用View()助手方法时,可以指定母版页的名称:

return View("About", "AlternateMaster", model);
AlternateMaster将解析为~/Views/Shared/AlternateMaster.master


我通过创建一个处理OnActionExecuted事件的基本控制器来实现这一点。在OnActionExecutedevent中,我分配母版页。然后我让所有其他控制器从基类继承

public class BaseController : Controller
{
     protected override void OnActionExecuted(ActionExecutedContext filterContext) {
         var action = filterContext.Result as ViewResult;
         if (action != null) {
             action.MasterName = MyApp.Properties.Settings.Default.Theme;
         }  

         base.OnActionExecuted(filterContext);
     }
}

如果您想了解更多详细信息,我通过创建一个处理OnActionExecuted事件的基本控制器来实现这一点。在OnActionExecutedevent中,我分配母版页。然后我让所有其他控制器从基类继承

public class BaseController : Controller
{
     protected override void OnActionExecuted(ActionExecutedContext filterContext) {
         var action = filterContext.Result as ViewResult;
         if (action != null) {
             action.MasterName = MyApp.Properties.Settings.Default.Theme;
         }  

         base.OnActionExecuted(filterContext);
     }
}

如果您需要更多详细信息

欢迎访问SO!你的问题太笼统了。如果您有特定的问题,请编辑您的问题并尽可能详细地说明。欢迎使用SO!你的问题太笼统了。如果您有特定的问题,请编辑您的问题并尽可能详细地说明。动态蒙皮不是称为“CSS”吗-DGeorge,CSS将是其中的一部分,但个性化或自定义视图肯定会超过CSS所能提供的。动态蒙皮不是被称为“CSS”吗-DGeorge,CSS将是其中的一部分,但个性化或自定义视图肯定会超出CSS所能提供的范围。现在这可以正常工作,但如果使用子操作,它会失败,因为它还会在子操作上设置母版页!现在这很好,但是如果使用子操作,它会失败,因为它还会在子操作上设置母版页!