Asp.Net MVC如何创建Dashboard视图页面

Asp.Net MVC how to create a Dashboard view page

我正在尝试向我的 Asp.net Mvc 应用程序添加特定视图,我的意思是仪表板页面。因此,我尝试添加一个包含不同项目的侧边栏菜单。我需要做的是在同一页面中显示一个依赖于所选侧边栏项目的视图。

我建议将侧边栏放在 Layout.cshtml

如果您想在边栏中显示不同的项目,您可以检查当前控制器名称和当前控制器操作

@if(ViewContext.RouteData.Values["controller"] == "Home")
{
   <li>item</li>
}

另一种方法是创建您自己的 WebViewPage 并在您的视图中使用您的自定义变量。它可以是控制器名称、操作名称或其他任何名称。

另一种不太推荐的方法是在 ViewBag 中保存首选侧边栏名称。这意味着在您的 Page.cshtml 中将包含:

@{
   ViewBag.PreferredSidebar = "default";
}

以后您可以在 Layout.cshtml:

中使用此值
@if(ViewBag.PreferredSidebar  == "default")
{
   @Html.Partial("SidebarDefault")
}

你可以结合这些方式。

如果你想用户可以hide/show侧边栏点击一些按钮记住这个设置,你可以使用例如JavaScriptHTML5 本地存储(将为当前用户及其浏览器存储设置)。