asp.net-mvc – 在MVC Razor中,如何在子布局下面定义一个RenderS
我有一个顶级的_Layout.cshtml,看起来像这样:
<html> <head> @RenderSection("Header",required: false) </head> <body> @RenderSection("LeftPane",required: false) @RenderSection("RightPane",required: false) @RenderBody() </body> </html> 那么我有两个“子布局”.一个定义了LeftPane部分,另一个定义了LeftPane和RightPane.这些子布局称为_LeftPane.cshtml和_LeftPlusRightPane.cshtml,它们的Layout设置为“_Layout.cshtml”. 然后在每个View .cshtml文件中,我将布局设置为_LeftPane.cshtml或_LeftPlusRightPane.cshtml,具体取决于我要显示在页面上的内容. 这一切都很好.问题是我在< head>中添加了新的“标题”部分部分文件.这个部分没有在子布局中定义,而是在实际的视图中定义.当我尝试以这种方式查看某些内容时,我会收到错误: 已经定义了以下部分,但没有为布局页面“?/ Views / Shared / _LeftPlusRightPane.cshtml”:“标题”呈现. 我不想在子图层中渲染页眉部分,我想在_Layout.cshtml文件中呈现它.如何从低级别的视图“通过”定义的“标题”部分,通过子布局,直到顶部_Layout? 解决方法
您可以嵌套布局.所以_Layout2有Layout =“_Layout.cshtml”;
您还可以在每个View子文件夹中使用_ViewStart文件来为该子文件夹指定不同的默认布局. 要“通过”该部分,您只需执行以下操作: @section Header {@RenderSection("Header",false)} 这可以让您将内容传递给链. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 跟踪广告链接点击但保持SEO友好链接?
- asp.net – Microsoft Report Viewer 2010部署
- asp.net – 将上一个错误传递给自定义错误重定向的最佳方法
- asp.net-mvc-4 – MVC 4 Html.EditorFor无效
- asp.net-mvc – 我是否需要在Login操作上使用ValidateAntiF
- asp.net-mvc – 神控制器 – 如何防止它们?
- asp.net – 多个选择列表框而不按CTRL
- asp.net core html 选择框checked选中
- asp.net – 如何动态更改母版页的母版页?
- asp.net – 从数据库加载时,DateTime.Kind设置为未指定,而不
- asp.net – 如何接收JSON作为MVC 5操作方法参数
- asp.net-mvc-3 – 在asp.net MVC3.0中创建GridVi
- ASP.NET:Viewstate并以编程方式添加用户控件
- asp.net – 使用thinktecture IdentityServer v2
- 有没有办法通过ASP.NET和app_offline.htm来显示图
- 实体框架 – Asp.Net Web API错误:’ObjectCont
- asp.net-core-mvc – 如何在Asp.Net Core中自定义
- 使用ASP.NET 2.0处理过期会话的最有效方法是什么
- ASP会话算法通过PHP生成cookie
- ASP.NET Core Identity获取用户id