Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 处理自定义异常类_C#_Asp.net Mvc_Exception Handling - Fatal编程技术网

C# 处理自定义异常类

C# 处理自定义异常类,c#,asp.net-mvc,exception-handling,C#,Asp.net Mvc,Exception Handling,我正在开发一个MVC应用程序 我正在尝试定义自己的异常类。我第一次做这个结构 我还要在我的异常类中添加什么,比如构造函数之类的,这样它才能正常工作 public ActionResult Edit(EmployeeVM employeeVM) { EmployeeService employeeService = new PartyService(); try {

我正在开发一个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
               {
               }
    }

您必须从服务中抛出这些异常,以便在此处捕获它们

throw new DuplicateEntityExcpetion("Your Query or Message");
throw new InvalidDataException ("Your Query or Message");
另外,处理通用异常是一种很好的做法,这样您就可以处理所有异常

 catch (Exception e)
                {
                    TempData["error"] =  e + "Data which you are trying to add is not valid.";
                }
请注意,
e+“some string”
将调用
Exception.ToString()
,它将输出有关异常的几乎所有信息,包括堆栈跟踪。我怀疑你想要
e.Message+“一些字符串”