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();
            }
        }
    }
}