例外のメソッド名、クラス名、ファイル名、行番号を書きたいです。どうすればこれを達成できますか? テキストファイル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
ページの別の行にあるのに が表示されず、0 が表示されるのFileName
はなぜですか。LineNumber
コードの修正があれば提案してください。