Когда возникает ошибка, мой OnException() срабатывает, и ошибка правильно регистрируется из моего вызова ajax.
Проблема заключается в том, что errorMessage, который я возвращаю в результате Json, НЕ отображается, а result.data равен «».
Вы видите, что я делаю неправильно с моим кодом?
$.post("/Admin/CreateOrganization", createOrganizationModel)
.done(function (data) {
if (data.success) {
//Everything is good
}
else {
swal(
'Failed to create organization.',
data.errorMessage,
'error'
);
}
})
.fail(function () {
swal(
'Failed to create organization. Please reload and try again',
'',
'error'
);
});
Вот мой OnException:
protected override void OnException(ExceptionContext filterContext)
{
// Log to database...
if (filterContext.HttpContext.Request.IsAjaxRequest())
{
filterContext.ExceptionHandled = true;
filterContext.Result = new JsonResult
{
Data = new { success = false, errorMessage = "An error has occurred." },
JsonRequestBehavior = JsonRequestBehavior.AllowGet
};
base.OnException(filterContext);
}
else
{
Server.ClearError();
RedirectToErrorView();
}
}





Отвечать:
Я исправил это, когда публиковал этот вопрос.
У меня была "ошибка" в моих данных =... вместо "errorMessage"
Теперь он показывает сообщение об ошибке в моем милом окне сообщения с предупреждением.