Не удалось вызвать функцию OnFailure для Ajax.BeginForm - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть кнопка в представлении, нажатие на эту кнопку отправит форму Ajax, т.е.

using (Ajax.BeginForm("SuspendAction", "Home", new AjaxOptions() { HttpMethod = "GET", UpdateTargetId = "btn-suspend-unsuspend", OnSuccess = "onLoadData", OnFailure = "onSuspendFailure", OnBegin = "onBeginDataLoad", LoadingElementId = "loading" }, new { data_message = strings.DashboardAccountStatusSuspendedMsg, data_failureMessage = strings.OperationFailureErrorMsg }))
                {


                }

SuspendAction - это действие в контроллере дома, которое возвращает PartialResultView.Теперь проблема в том, что это действие должно возвращать сообщение об ошибке и должна вызываться функция OnFailure.Хотелось бы узнать, как добиться этой функциональности.

Нравится

public PartialViewResult SuspendAction()
{
  try
  {
  }
  catch(Exception ex)
{
  //should trigger OnFailure function.
}
}

1 Ответ

0 голосов
/ 06 сентября 2018

Метод OnFailure произошел, когда код состояния ответа не 2XX. В блоке перехвата измените код состояния ответа на 4XX:

Response.StatusCode = 400;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...