アプリのステータスをログに記録したいのですが、 TextWriter パラメータをメソッドに渡さないようにしたいです。
public static void M1(TextWriter w)
私が呼び出すすべてのメソッドまで。とにかくこれを避けるには?次のようなものが欲しいのですが、次のエラーが表示されます: The name 'w' does not exist in the current context
とにかく、ストリームライターのインスタンスをすべてのメソッドで利用できるようにするには? それともそのようなものですか?可能であれば、例を挙げていただけますか。
public static void Main(string[] args)
{
using (StreamWriter w = File.CreateText(ConfigManager.logFile))
{
Log("start");
M1();
Log("end");
}
}
public static void M1()
{
Log("M1 start");
Log("M1 end");
}
public static void Log(string logMessage)
{
w.WriteLine("[{0}][{1}] {2} ", String.Format("{0:yyyyMMdd HH:mm:ss}", DateTime.Now),
"Info", logMessage);
w.Flush();
}