Q: Logout com Identity Estou a tentar utilizar a função de logoff oferecida por padrão no Identity:
    // POST: /Account/LogOff
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult LogOff()
    {
        AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
        return RedirectToAction("Index", "Home");

Porém toda vez que tento chamar esta função ele retorna este erro :

Erro de Servidor no Aplicativo '/'.

E diz que a URL solicitada foi : 

URL solicitada: /Manage/LogOff

Para chamar esta Action eu utilizei o seguinte método : 
 @if (User.Identity.IsAuthenticated) {<li>@Html.ActionLink("Sair", "LogOff", "AccountController", FormMethod.Post)</li> }

Ao invés de chamar para AccountController já tentei utilizar apenas Account como está descrito no comentário da função // POST: /Account/LogOff, porém não obtive sucesso.
Para fazer isto dar certo devo chama-la de outra forma ? ou escrever um método diferente para realizar o logoff ?

A: Implementei um desses ontem, acredito que o método do controller precise ser um post para requisitar o logoff:
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Logoff()
    {
        AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
        return RedirectToAction("Login", "Account");
    }

No front-end, utilizo o HtmlHelper BeginForm pra já montar a página com a opção Logoff disponível caso a requisição esteja autenticada, especificando que quero um método Post do controller:
@using Microsoft.AspNet.Identity
@if (Request.IsAuthenticated)
{
    using (Html.BeginForm("Logoff", "Account", FormMethod.Post, new { id = "logoutForm", @class = "navbar-right" }))
    {
    @Html.AntiForgeryToken()

    <ul class="nav navbar-nav navbar-right">
        <li>
            @Html.ActionLink($"Oi {User.Identity.GetUserName()}!", "Index", "Manage", routeValues: null, htmlAttributes: new { title = "Manage" })
        </li>
        <li><a href="javascript:document.getElementById('logoutForm').submit()">Log off</a></li>
    </ul>
    }
}
else
{
    <ul class="nav navbar-nav navbar-right">
        <li>@Html.ActionLink("Registrar Usuário", "RegisterUser", "Account", routeValues: null, htmlAttributes: new { id = "registerLink" })</li>
        <li>@Html.ActionLink("Log in", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })</li>
    </ul>
}


A: Segue exemplo de chamada no front-end:
   <ul>
      <li>
          <a href="~/Login/Logout">
          <i class="ace-icon fa fa-power-off"></i>
             Sair
          </a>                               
      </li>
  </ul>

Segue exemplo de função de LogOut:
public ActionResult Logout()
    {

        HttpContext.GetOwinContext()
                   .Authentication
                   .SignOut(HttpContext.GetOwinContext()
                                       .Authentication.GetAuthenticationTypes()
                                       .Select(o => o.AuthenticationType).ToArray());

        return RedirectToAction("Index");
    }


A: O helper @Html.ActionLink gera um elemento HTML <a> - anchor.
As requisições realizadas a partir dele são do tipo GET, não possibilitando a action que possui tipo POST ser executada.
Tente trocar a anotação HttpPost para HttpGet ou mude a sua chamada para realizar uma requisição do tipo POST.
Ex:
[HttpGet]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
    AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
    return RedirectToAction("Index", "Home");

