ごまなつ Blog

楽しく働ける世界を目指して

【C# .NET】関数名と行番号、ファイルパスを取得する

エラーのログを見るときに、関数名と行番号があるとどこが問題か特定しやすくなります。どうやれば表示できるのか調べました。

using System.Runtime.CompilerServices;

public static string GetInfo([CallerLineNumber]int line = 0,
                             [CallerMemberName]string name = "",
                             [CallerFilePath]string path = "")
        {
            string info = "行番号:" + line + "名前:" + name + "ファイルパス:" + path;
            return info;     
        }

private void button1_Click(object sender, EventArgs e)
        {
            string info = GetInfo();
            textBox1.AppendText(info);
        }

System.Runtime.CompilerServicesを用いています。C#5.0以降に対応しています。 これでエラー場所を特定しやすくなるはずです。