簡體   English   中英

ASP.MVC從控制器或視圖級別更改_Layout元素

[英]ASP.MVC change _Layout elements from controller or view level

我共享了具有部分菜單和正文(RenderBody)的_Layout。 我想在控制器或視圖級別上控制_Layout的呈現方式。 對於一個控制器動作或視圖,我想隱藏菜單(_Layout的一部分),對於其他控制器,我想顯示它。

有任何明確的解決方案嗎? 就像是:

thisView.Layout.HideMenu = true

您可以使用布爾屬性bool showMenu {get; set;}創建基本ViewModel bool showMenu {get; set;} bool showMenu {get; set;}然后讓您的其他ViewModel繼承自基本ViewModel。

最后,在_Layout.cshtml (將基本ViewModel作為其@model )中,您可以執行Razor if(Model.showMenu) 為true時,菜單將呈現;為false時,菜單將被隱藏。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM