Вы должны возвратить представление, которое имеет дружественное сообщение об ошибке пользователю
catch (Exception ex)
{
// to do :log error
return View("Error");
}
Вы не должны быть показаны внутренние детали вашего исключения (как исключение, StackTrace и т.д.) для пользователя. Вы должны регистрировать соответствующую информацию в своем журнале ошибок, чтобы вы могли пройти через нее и исправить проблему.
Если ваш запрос является Ajax запроса, Вы можете вернуть ответ JSON с надлежащем флагом состояния, который клиентом может оценить и сделать дальнейшие действия
[HttpPost]
public ActionResult Create(CustomerVM model)
{
try
{
//save customer
return Json(new { status="success",message="customer created"});
}
catch(Exception ex)
{
//to do: log error
return Json(new { status="error",message="error creating customer"});
}
}
Если вы хотите, чтобы показать ошибку в представленном пользователе формы , Вы можете использовать метод ModelState.AddModelError
вместе с методами помощника Html, например Html.ValidationSummary
и т. Д., Чтобы показать ошибку пользователю в представленной форме.
Откуда вы взяли JsonError? –
@EhsanZargarErshadi: Я думаю, что нашел: https://docs.microsoft.com/en-us/uwp/api/windows.data.json.jsonerror – Matt
Спасибо за эту строку HttpContext.Response.StatusCode = (int) HttpStatusCode .BadRequest; –