我是mvc的新手。现在我正在尝试创建一个登录页面。如果登录成功,则应重定向到管理页面。这很有效,但即使登录成功,也会显示bool operator<(const screenPoint& left, const screenPoint& right){
if (left.x != right.x) return left.x < right.x;
else return (left.y < right.y);
}
按钮。登录成功后,我只想在管理视图中使用Login
按钮。
现在我的管理员视图显示如下:
登录 退出
欢迎管理员
但我想要这样的东西
注销
欢迎管理员
这是我的 _Layout.cshtml页面
logout
和控制器:
<ul class="nav navbar-nav">
<li>@Html.ActionLink("Login", "Login", "MyAccount")</li>
<li>
@{
if (Request.IsAuthenticated)
{
<li>@Html.ActionLink("Logout", "Logout", "MyAccount")</li>
}
}
</li>
</ul>
和管理员视图:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Login(Login l, string returnUrl = "")
{
//Some code//
{
return RedirectToAction("Admin", "Home");
}
}
我不知道是否可以将“登录”按钮从_layout隐藏到管理视图。
答案 0 :(得分:1)
为什么不使用if-else
有条件地呈现链接?
<ul>
@if (!Request.IsAuthenticated)
{
<li>@Html.ActionLink("Login", "Login", "MyAccount")</li>
}
else
{
<li>@Html.ActionLink("Logout", "Logout", "MyAccount")</li>
}
</ul>