2014-09-27 3 views
0

Я разрабатываю приложение MVC.Обработка пользовательских классов исключений

Я пытаюсь определить свои собственные классы исключений. Я делаю эту структуру в первый раз ...

Что еще я должен добавить в свои классы исключений, например, конструктор или что-то еще, поэтому он хорошо работает ...?

public ActionResult Edit(EmployeeVM employeeVM) 
    { 
       EmployeeService employeeService = new PartyService(); 
       try 
       { 
        PartyService partyService = new PartyService(); 
        partyService.Update(PartyVM); 
       } 
       catch (DuplicateEntityExcpetion e) 
       { 
        TempData["error"] = e + "Party you are trying to add is already exist."; 
       } 

       catch (InvalidDataException e) 
       { 
        TempData["error"] = e + "Data which you are trying to add is not valid."; 
       } 


       public class InvalidDataException : Exception 
       { 
       } 

       public class DuplicateEntityExcpetion : Exception 
       { 
       } 
    } 
+0

Обратите внимание, что 'e +" некоторая строка "' будет вызывать 'Exception.ToString()', которая выведет почти все об исключении, включая трассировку стека. Я подозреваю, что вы хотите 'e.Message + 'некоторую строку" ' –

ответ

0

Вы должны исключить эти исключения из своего сервиса, чтобы они были пойманы здесь.

throw new DuplicateEntityExcpetion("Your Query or Message"); 
throw new InvalidDataException ("Your Query or Message"); 

Кроме того, это хорошая практика, чтобы иметь общее исключение обрабатывается таким образом, чтобы вы позаботились обо всех исключениях.

Смежные вопросы