C/S开发框架系统异常处理机制(Exception Handler)


  C/S开发框架系统异常处理机制(Exception Handler)C/S开发框架系统异常处理机制(Exception Handler)



异常处理机制(Exception Handler)


构建安全稳定的应用系统首先要处理的是系统抛出的异常, 否则在程序运行中因系统发生错误而中止程序。我总结了以下四种保护机制:


1. 处理系统未被捕获的异常, static void Main() 方法内设置

   //引发未捕获的异常,这里没有try{}catch()异常保护,
   //由Application.ThreadException事件捕获



2.处理界面层抛出的异常
    //界面层异常指捕获窗体内的错误。
    //常用错误是操作未实例化的对象,索引错误,第三方控件错误等.



3.处理业务逻辑层抛出异常



4. 处理数据层或多层嵌套调用中抛出异常






贴图图片



贴图图片



用户自定义异常:


/// <summary>
/// 用户自定义异常
/// </summary>
public class CustomException : Exception
{
   private string MSG = "系统产生用户自定义异常!";
   private object _sender = null;
   
   public CustomException(object sender, string msg)
   : base(msg)
   {
      _sender = sender;
   }
}

/// <summary>
/// 用户操作未授权的窗体或业务逻辑所产生的异常
/// </summary>
public class UnauthorizedException : CustomException
{
   public UnauthorizedException(object sender, string msg)
   : base(sender, msg)
   {
      //
   }
}

/// <summary>
/// 用户操作已锁定的单据
/// </summary>
public class OperateLockedOrder : CustomException
{
   public OperateLockedOrder(object sender, string msg)
   : base(sender, msg)
   {
      //
   }
}

// 来源:www.CSFramework.com, C/S结构框架学习网





/// <summary>
/// 处理系统所产生的异常
/// </summary>
public class ExceptionHandle
{
   
   //处理由sender参数传递过来的异常
   public static void Handle(object sender, Exception ex)
   {
      string msg = "Sender:" sender.GetType().Name ":\r\nException Type:"
      ex.GetType().Name "\r\nDescription:" ex.Message;
      
      ExceptionLog.WriteLog(msg "\r\nException Time:" DateTime.Now.ToString());
      ExceptionLog.WriteLog("------------------------------------------------------");
      
      _text.Text = msg; //在TextBox控件内显示
      
      MessageBox.Show(msg, "捕获到异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
   }
   
   private static TextBox _text = null;
   
   /// <summary>
   /// 这个方法仅用于显示当前异常信息,无实际意义!
   /// </summary>
   public static void ExceptionTextBox(TextBox text)
   {
      _text = text;
   }
}

// 来源:www.CSFramework.com, C/S结构框架学习网





C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务

版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
上一篇:C#.Net CS开发框架实现多语言(C/S框架网)
下一篇:软件开发框架的设计和选择
评论列表

发表评论

评论内容
昵称:
关联文章

C/S开发框架系统异常处理机制(Exception Handler)
ASPNET WebAPI后端框架全局异常跟踪及处理机制,保存系统异常消息日志
C/S开发框架事务处理机制
服务端增加WCF服务全局异常处理机制
C#.NET 6 实现全局异常处理
Application ThreadException 事件内需要处理异常
AspNet WebAPI后端框架消息处理机制(配置属性HttpConfiguration.MessageHandlers)
C#.NET 消息机制
WebApi接口安全机制:API接口限流防止恶意访问 ThrottlingHandler消息处理机制
CSFramework.WebApi服务端处理流程与机制
CSFrameworkV6 -软件开发平台 - 明细表图片处理机制
【原创】WebApi开发框架:Token生成、Token缓存原理、Token验证、令牌机制与原理
CSFramework.WebApi系统安全保障机制
CS开发框架之自增字段(Identity),时间戳(Timestamp)字段处理|C/S框架
系统异常日志、用户操作日志管理
C#.NET CLR垃圾回收机制
WinFramework轻量级开发框架 - 窗体权限机制
帮助机制如何处理的?
Winform开发框架功能细节处理集锦
安装WCF服务-安装Windows服务(System.ComponentModel.Win32Exception:远程过程调用失败)