【发布时间】:2019-03-01 15:13:56
【问题描述】:
当发生错误时,我的 OnException() 被触发,并且错误正在从我的 ajax 调用中正确记录。
问题是我在 Json 结果中返回的 errorMessage 没有显示并且 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();
}
}
【问题讨论】:
标签: c# asp.net-mvc error-handling