asp.net-mvc – 是否可以在基于路由的MVC4中使用不同的布局?
我有一个单独的部分(路线)我的网站,我想使用不同的布局/ CSS等. 因此,当我的网站主要部分的用户获得默认布局时. 所以… > www.blahblahblah.com/ …都使用默认的_Layout 但… > www.blahblahblah.com/store/ …使用_LayoutStore 我已经看到这是基于这里的角色(http://forums.asp.net/t/1653362.aspx/1)和这里(How to use multiple Layout in MVC 3?)完成的,但我不想那样做.我需要根据客户的路线选择我的布局(也就是看他们在里面). 提前感谢您提供任何帮助. 解决方法你有没有看过在任何给定的视图文件夹中使用_ViewStart.cshtml文件?如果这不是您正在寻找的并且您希望路由中的值确定要使用的布局,您可以尝试创建一个将返回要使用的布局的辅助方法: public static class LayoutHelper { public static string GetLayout(RouteData data,string defaultLayout = "") { if (data.Values["action"] == "edit") return "~/views/shared/_AdminLayout.cshtml"; return defaultLayout; } } 然后你就可以从你的View中调用它: @{ Layout = LayoutHelper.GetLayout( Request.RequestContext.RouteData,"~/views/shared/_layout.cshtml"); } 但在我看来,如果你在包含商店布局的Views / Store文件夹中创建一个_ViewStart.cshtml文件,那么你就可以了. (编辑:鲜蔬坊站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net结合Ajax验证用户名是否存在的代码
- asp.net-mvc – SelectListItem中的Selected属性永远不会起
- Jquery+ajax请求data显示在GridView上(asp.net)
- ASP.NET MVC是否使Web表单成为旧版平台?
- asp.net – “’Microsoft.Jet.OLEDB.4.0’提供程序未在本地
- ASP.NET MVC Url路由支持(点)
- 如何单元测试我的asp.net-mvc控制器的OnActionExecuting方法
- asp.net – Request.Browser.Platform不返回iPad,OSX或Wind
- asp.net – 如何从TableAdapter中检索存储过程返回值
- asp.net-mvc – 使用没有ORM的ASP.NET MVC
- 过滤ASP.NET Core API中的属性
- ASP.NET:从C#代码隐藏显示警报
- asp.net实现access数据库分页的方法
- asp.net-mvc-3 – Azure网站上的RavenDb – 访问
- asp.net-mvc-3 – ASP.Net MVC 3:在哪里处理会话
- asp.net-mvc – ASP.NET MVC如何在生产中禁用调试
- asp.net-mvc – 如何设置AntiForgeryToken cooki
- asp.net-web-api – 首先使用ASP.NET Web API的E
- asp.net-mvc – 在IIS 5.1上部署ASP.NET MVC(Win
- asp.net-mvc – MVC4部分视图没有将值加载到“容