当前位置: 移动技术网 > IT编程>开发语言>.net > C# 动态获取代码所在行号

C# 动态获取代码所在行号

2019年01月31日  | 移动技术网IT编程  | 我要评论

触目惊心快播,91530sf,初代吸血鬼第四季

通过system.diagnostics.stacktrace获取代码所在行号和文件信息

获取行号信息

        /// <summary>
        /// get line number of code dynamically
        /// </summary>
        /// <param name="skipframes">number of frames to skip</param>
        /// <returns>line number of code after skipping frames</returns>
        public static int getcodelinenum(int skipframes)
        {
            stacktrace st = new stacktrace(skipframes, true);
            stackframe fram = st.getframe(0);
            int linenum = fram.getfilelinenumber();
            return linenum;
        }

skipframes == 0 :

获取的是 system.diagnostics.stacktrace st = new system.diagnostics.stacktrace(skipframes, true); 所在行号

skipframes == 1:

获取的是函数getcodelinenum被调用时所在行号


获取文件路径信息

        /// <summary>
        /// get file name information of code dynamically
        /// </summary>
        /// <param name="skipframes">number of frames to skip</param>
        /// <returns>file name information of code after skipping frames</returns>
        public static string getcodefilename(int skipframes)
        {
            stacktrace st = new stacktrace(skipframes, true);
            stackframe fram = st.getframe(0);
            string source = fram.getfilename();
            return source;
        }

获取exception中行号

int linenum = ex.stacktrace.indexof("行号");

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网