Маршрут для /MySiteName/Account/LogOff/logoutForm
просто не существует.Вы передаете в маршрут параметр id
со значением "logoutForm"
, но метод действия LogOff не принимает никаких параметров.Это также точно, что ошибка говорит вам.Вы можете убедиться в этом, посмотрев на сигнатуру вашего метода действия:
public ActionResult LogOff() {}
Как видите, он не принимает никаких параметров, поэтому URL-адрес, который вы должны вызвать, совпадает с указанным в комментарии.прямо над ним: // POST: /Account/LogOff
Это, в свою очередь, означает удаление параметров вашего маршрута, поэтому просто замените new { id = "logoutForm" }
на null
:
@Ajax.ActionLink(@Resources.Resources.LogOff, "LogOff", "Account", null, new AjaxOptions { HttpMethod = "POST" })
И вам следует идти вперед.
Не вижу причины, по которой сам Log Out должен быть постом.Вы не отправляете какие-либо данные на сервер.Вы можете сделать простой GET, добиться того же самого и по пути убрать некоторую несущественную сложность.