2016-04-22 59 views
0

我在注销页面时遇到了一些麻烦。我有一个这样的控制器注销无法正常工作

public ActionResult LogOut() 
{ 
    FormsAuthentication.SignOut(); 
    Session.Abandon(); 
    return RedirectToAction("Index", "Home"); 
} 

所以一个叫做LogOut的视图。我已经把一个href它有一个按钮:

<li><a class="logout" href="~/Views/Account/LogOut.cshtml">Se déconnecter</a></li> 

,但是当我点击它口口声声说我你的网页无法被发现等等

但奇怪的是这一点,如果我放在我的地址栏中,LogOut视图的路径起作用,我断开连接,有人知道为什么?

回答

1

你应该给HREF这样的,而不是路径CSHTML文件:

<li><a class="logout" href="@Url.Action('Logout', 'ControllerName')">Se déconnecter</a></li> 

它会击中注销操作方法,然后将渲染视图适当地

+5

或者只是'@ Html.ActionLink(“Sedéconnecter”,“Account”,“Logout”,新的{@ class =“logout”})' –

+0

非常感谢Hardik,这工作,我想我有一些进展要做用剃刀!你的回答也很好斯蒂芬感谢你,而不是第一次你帮我;) –

+0

是的,事实上,这是生成剃须刀链接的正确方法 – Hardik

1

您可以用不同的方式设置链接:

1) <li><a class="logout" href="/Account/LogOut">Se déconnecter</a></li> 

2) <li><a class="logout" href="@Url.Action("LogOut","Account")">Se déconnecter</a></li>

3) <li>@Html.ActionLink("Se déconnecter", "Account", "Logout", new { @class="logout" })</li> 
+0

谢谢你,堆栈是一个很好的社区,随时准备帮助,这是美好的! –