【问题标题】:how to remove _layout for admin dashboard如何删除管理仪表板的 _layout
【发布时间】:2022-01-21 07:42:36
【问题描述】:

我想排除特定管理仪表板视图的 _layout。我知道的唯一方法是使用 JS 隐藏这些 div。有没有其他办法?

【问题讨论】:

    标签: asp.net .net asp.net-mvc


    【解决方案1】:

    在你不想使用布局的剃须刀页面中,你可以这样做:

    @{
        Layout = null;
    }
    

    【讨论】:

      【解决方案2】:

      如果您想暂时从视图中排除布局,您可以使用此代码从控制器操作中返回视图

      if(...) return PartialView("name",model);
      return View("name",model)
      

      当你返回一个局部视图时,它只会显示一个视图,而不是一个布局

      如果您不想为某些视图永久排除布局,您可以在视图内使用此代码

      @{
          Layout = null;
      }
      

      但不要忘记布局通常包含大部分 Javascript 和 css 库。所以最好为某些视图创建一个特殊的布局。 或者你可以使用 ViewStart 页面

      @{  
          string CurrentName = Convert.ToString(HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"]);  
          dynamic Layout;  
          switch (CurrentName)  
          {  
              case "User":  
                  Layout = "~/Views/Shared/_Layout.cshtml";  
                  break;  
              default:  
                  //Admin layout  
                  Layout = "~/Views/Shared/_AdminLayoutPage.cshtml";  
                  break;  
          }  
      }   
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-11-21
        • 2020-02-19
        • 2014-09-30
        • 2021-03-09
        • 1970-01-01
        • 2019-09-01
        • 2016-07-02
        相关资源
        最近更新 更多