登录前隐藏菜单并在之后显示

时间:2015-10-30 12:39:38

标签: c# asp.net-mvc-4 layout views

大家好我在这里遇到一些问题,我设置我的登录页面是我网站的启动页面我设法通过在HomeController中使用[Authorize]来完成,但现在菜单栏正在显示。我不希望它在用户登录之前显示我希望登录后显示菜单。有人可以帮助我。

这是我的下面的菜单(查看主要布局的代码)

@if (User.Identity.IsAuthenticated)
{
    <div class="navbar-collapse collapse">
    <ul class="nav navbar-nav" style="font:bold;">
        <li>@Html.ActionLink("Home", "Index", "Home")</li>
        <li>@Html.ActionLink("Vehicles", "Vehicles", "Home")</li>
        <li>@Html.ActionLink("VehicleTrips", "VehicleTrips", "Home")</li>
        <li>@Html.ActionLink("Report", "Index", "Report")</li>
        <li>@Html.ActionLink("About", "About", "Home")</li>
        <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
        <li>@Html.ActionLink("OffVehicles", "OffVehicles", "Home")</li>
        <li>@Html.ActionLink("MovingState", "MovingState", "Home")</li>

    </ul>
    @Html.Partial("_LoginPartial")
  </div>

1 个答案:

答案 0 :(得分:2)

您在登录页面中看到_Layout因为_ViewStart.cshtml文件将其设置在场景后面。此文件位于Views/Shared文件夹下。您可以通过将_Layout属性设置为null来设置,以禁用Layout特定视图。

所以设置

@{
    Layout =  null;
}

位于您的视图顶部。

相关问题