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]