• 获取当前程序运行的堆栈的副本集合


    从DNN中拔出的,效果不赖。。。获取程序运行时候异常的调用堆栈位置

     /// <summary>         /// 获取调用的堆栈信息 获取当前程序运行的堆栈的副本集合         /// </summary>         private static StackFrame CallingFrame         {             get             {                 StackFrame frame = null;                 ///返回当前堆栈跟踪中所有堆栈帧的副本。                 var stack = new StackTrace().GetFrames();                 int frameDepth = 0;                 if (stack != null)                 {                     ///穷历  直到找到要调用日志或者异常的时候 的前一个方法    就查询到了 出错的执行方法的位置                     var reflectedType = stack[frameDepth].GetMethod().ReflectedType;                     while (reflectedType == BuildManager.GetType("DotNetNuke.Services.Exceptions.Exceptions", false)                             || reflectedType == typeof(DnnLogger)                             || reflectedType == typeof(DnnLog))                     {                         //排除这些类 找到指定的调用的类 Type                         frameDepth++;                         reflectedType = stack[frameDepth].GetMethod().ReflectedType;                     }                     frame = stack[frameDepth];                 }                 return frame;             }         }
  • 相关阅读:
    python 如何将md5转为16字节
    linux非root用户执行开机启动程序
    python 正则表达式的使用
    Go随机数的使用
    Go 的类型断言type assertion
    go get中的...
    Go语言圣经
    python入门第三十五天--事件驱动模型(补)练习理解
    MySQL_Ubuntu安装
    JAVA入门基础--数据类型
  • 原文地址:https://www.cnblogs.com/micro-chen/p/4228302.html
Copyright © 2020-2023  润新知