zoukankan      html  css  js  c++  java
  • c# AOP OnExceptionAspect

    1.引入PostShartp

    2.  

     [Serializable]
        public class ExceptionAttribute : OnExceptionAspect
        {
            public override void OnException(MethodExecutionArgs args)
            {
                base.OnException(args);
                Debug.WriteLine($"{args.Exception.Message}11111111111111111111111111111111111111111");
                args.FlowBehavior = FlowBehavior.Continue;
            }
        }

    Serializable 序列化标签,继承Aop的类必须是可序列化的

    序列化:

    简单来说序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化,流的概念这里不用多说(就是I/O),我们可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间(注:要想将对象传输于网络必须进行流化)!在对对象流进行读写操作时会引发一些问题,而序列化机制正是用来解决这些问题的!

    =======

    序列化和反序列化并不是C#独有的,包括java、php、js等都可以做到。
    序列化是将对象状态转换为可保持或传输的格式的过程,比如转化为二进制、xml、json等的过程。
    与序列化相对的是反序列化,它将流转换为搜索对象,也就是将在序列化过程中所生成的二进制串、xml、json等转换成数据结构或者对象的过程
    这两个过程结合起来,可以轻松地存储、传输数据。

    args.FlowBehavior = FlowBehavior.Continue;

    这句很关键,如果不加程序遇到Exception时会停止

    加上后程序正常运行

    调用代码

    主函数

    aaaa();

          [ExceptionAttribute]
            public static void aaaa()
            {
                int a = 0;
                int b = 1;
                var dd = b / a;
            }

  • 相关阅读:
    MongoDB慢查询性能分析
    redis的LRU算法(二)
    Skynet服务热点火焰图分析
    内存爆灯
    时区问题
    与机器共生
    bug狩猎
    Lesson Learned
    下划线引起的血案
    Intel的CPU漏洞:Spectre
  • 原文地址:https://www.cnblogs.com/dzh1990/p/7562545.html
Copyright © 2011-2022 走看看