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-mvc – 在EditorFor for child对象中使用时,MVC无法
- ASP.NET异步方法问题
- asp.net-mvc-4 – 如何在Kendo UI Grid中扩展页面加载时的所
- ASP.NET Response.Cache.SetNoStore()与Response.Cache.Set
- 用C#实现pdf文件的完整性验证
- asp.net – 什么是system.globalization它和本地化有什么区
- asp.net-mvc – ASP.NET MVC的Content / Themes / base Dir
- asp.net-mvc – ELMAH和SQL Server 2008 R2?
- 不确定人数的抽奖方法
- 数组 – 如何在vbscript中实现具有可变大小的数组
- asp.net-mvc-4 – WepApi控制器是否应该返回view
- asp.net-core – 使用IdentityServer4生成访问令
- asp.net – 多个域的集成Windows身份验证
- asp.net-web-api – Web API / MVC 6中的安全JSO
- 在IIS上部署ASP.NET Core项目的图文方法
- 隐藏ASP.NET菜单项
- asp.net – Ajax上的Identity Server 3 – 401而
- 序列化 – Newtonsoft中的TypeNameHandling需要$
- asp.net-mvc-3 – MVC 3不显眼的验证 – 有条件地
- ASP.NET 2.0或3.5?
