컴파일러서비스를 통해 어디서 누가 호출을 했는지 확인 할 수 있습니다.
로그를 남길 때 별도의 호출 함수 양식을 작성하지 않고도 사용할 수 있는 방법입니다!
DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); 를 통해
년-월-일 시:분:초
를 정의할 수도 있습니다. 아래는 호출 예제입니다.
using System;
using System.Windows.Forms;
using System.Runtime.CompilerServices; //[Caller 사용]
namespace WindowsFormsApp
{
public partial class Form1 : Form
{
Test test = new Test();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
test.ShowCaller();
Log("로그 내용");
}
private void Log (string message, [CallerMemberName] string name = "")
{
string log = string.Format("{0} [{1}] : {2}{3}", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), name, message, Environment.NewLine);
MessageBox.Show(log);
}
}
class Test
{
public void ShowCaller([CallerMemberName] string name = "", [CallerFilePath] string path = "", [CallerLineNumber] int line = 0)
{
MessageBox.Show("name : " + name + "\n" +
"path : " + path + "\n" +
"line : " + line);
}
}
}
'C# > Windows Form' 카테고리의 다른 글
[C# Windows Form] HttpWebRequest POST 방식 통신 (0) | 2022.12.03 |
---|---|
[C# Windows Form] HttpWebRequest Get 방식 통신 (0) | 2022.12.03 |
[C# Windows Form] Alt + Tab, Ctrl + Esc 등 특수 키 막기 (키보드 후킹) (0) | 2022.11.22 |
[C# Windows Form] Custom URI 만들기 (웹에서 .exe 실행) (0) | 2022.08.10 |
[C# Windows Form] FormBorderStyle = None 인 경우 모니터 위치에 맞게 최대화 시키기 (0) | 2022.07.26 |