Как сообщить об ошибке в $.ajax без выброса исключения в контроллере MVC?

У меня есть контроллер, и метод, как определено...

[HttpPost]
public ActionResult UpdateUser(UserInformation model){

   // Instead of throwing exception
   throw new InvalidOperationException("Something went wrong");


   // I need something like 
   return ExecutionError("Error Message");

   // which should be received as an error to my 
   // $.ajax at client side...

}

Проблемы с исключениями

  1. Мы должны регистрировать исключения в случае ошибок устройства или сети, таких как ошибки SQL Connectivity.
  2. Эти сообщения похожи на валидационные сообщения для пользователей, которые мы не хотим регистрировать.
  3. Выбрасывание исключений также переполняет Event Viewer.

Мне нужен простой способ сообщить некоторый пользовательский статус http моему вызову $.ajax так, чтобы это привело к ошибке на стороне клиента, но я не хочу выбрасывать ошибку.

UPDATE

Я не могу изменить клиентский скрипт, потому что он становится несовместимым с другим источником данных.

Пока что HttpStatusCodeResult должен работать, но проблема в IIS. Неважно, какое сообщение об ошибке я задаю, я перепробовал все ответы, все равно я получаю только сообщение по умолчанию.

34
задан Akash Kava 3 January 2012 в 08:00
поделиться