Lose.zhang 发表于 2012-12-10 14:15:02

MVC根据角色自动选择母版页

<div id="cnblogs_post_body">在使用MVC开发应用程序时,如果希望根据不同的角色选择不同风格的页面,可以通过动态设置ViewResult对象中的MasterName属性来实现,具体看代码:
一个对controller进行抽象的基类:
<div class="cnblogs_code" >http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gifhttp://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gifView Code <div id="cnblogs_code_open_35fb6792-a9f4-4196-8e97-d18536277f68" class="cnblogs_code_hide"> 1public abstract class BaseController : Controller 2     { 3         /// <summary> 4         /// 默认构造方法 5 6      /// 根据角色为MasterFile进行赋值 7         /// </summary> 8         public BaseController() : this(UIHelper.GetMasterPage(Tsingda.XXB.Common.WebSession.UserRole)) { } 9 10         public BaseController(string masterfile)11       {12             this.MasterFile = masterfile;13       }14 15    /// <summary>16         /// 重写controller的View方法17 18   /// </summary>19         protected new ViewResult View(string viewName, object model)20       {21             ViewData.Model = model;22             return new ViewResult23             {24               ViewName = viewName,25               MasterName = this.MasterFile,26               ViewData = ViewData,27               TempData = TempData28             };29      }30 31 }
页: [1]
查看完整版本: MVC根据角色自动选择母版页