我想写异常的方法名、类名、文件名、行号。我怎样才能做到这一点?我尝试了下面的代码,传递Exception
给写入msg
文本文件的函数。
string msg = "";
StackTrace st = new StackTrace(ex);
var frame=st.GetFrame(0);
msg = @"Message : " + ex.Message + " \n FileName: " + frame.GetFileName() + " \n Method Name : " + frame.GetMethod() + "\n Line Number : " + frame.GetFileLineNumber()+"\n Class Name :"+frame.GetMethod().DeclaringType;
日志写入文件如下
Message: Message : Attempted to divide by zero.
FileName:
Method Name : Void Page_Load(System.Object, System.EventArgs)
Line Number : 0
Class Name :RequestsView
为什么即使它出现在页面的另一行,也会FileName
丢失并显示 0。LineNumber
如果有的话,请在代码中提出更正建议。