zoukankan      html  css  js  c++  java
  • C#自定义异常 统一异常处理

    异常类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace EasErpQuerySys.EasApplication
    {
        [Serializable]
        public class EasWebServiceException : ApplicationException
        {
            private readonly ExceptionResult _exceptionResult;
            public EasWebServiceException() { }
            public EasWebServiceException(string resultStatus, string resultMsg) : base(resultStatus)
            {
                _exceptionResult = new ExceptionResult { resultMsg = resultMsg, resultStatus = resultStatus };
            }
            public ExceptionResult GetExceptionResult()
            {
                return _exceptionResult;
            }
        }
        public class ExceptionResult
        {
            public string resultStatus { get; set; }
            public string resultMsg { get; set; }
        }
    }

    触发类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace EasErpQuerySys.EasApplication
    {
        public class EasAppService : IEasAppService
        {
            public string Test()
            {
    
                throw new EasWebServiceException("失败", "失败了滚蛋");
    
            }
        }
    }

    捕获类

    using EasErpQuerySys.EasApplication;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace test
    {
        class Program
        {
            static void Main(string[] args)
            {
                IEasAppService easAppService = new EasAppService();
    
    
                try
                {
                    easAppService.Test();
                }
                catch (EasWebServiceException e)
                {
                    var tt = e.GetExceptionResult();
                    Console.WriteLine(tt.resultMsg);
                    Console.WriteLine(tt.resultStatus);
                    Console.ReadLine();
                }
            }
        }
    }

    输出结果:

  • 相关阅读:
    Atom使用教程
    4-[函数]-参数
    4-[函数]- 独立功能的代码块
    3 [文件]-修改文件
    2 [文件]-文件操作
    1. [文件]- 文件类型,文件open模式
    2-16 阶段考核
    react native 网络get请求方式参数不可为undefined或null
    [网络]远程访问局域网svn服务器[转]
    react native listview 一个有用的属性,用作两列布局
  • 原文地址:https://www.cnblogs.com/eedc/p/9266237.html
Copyright © 2011-2022 走看看