티스토리 뷰

C#에서 logging 등의 이유로 현재 실행중인 method나 class의 이름과 같은 정보가 필요할때 `System.Reflection`나 `System.Diagnostics` 네임스페이스의 기능들을 사용할 수 있다.

 

- System.Reflection

  - 런타임에 어셈블리, type 및 member에 대한 메타데이터 접근 기능 제공

  - 주요 클래스 : Assembly, Type, MethodInfo

- System.Diagnostics

  - 런타임에 application을 모니터링하고 디버깅할 수 있는 기능 제공

  - 주요 클래스 : Process, StackTrace, StackFrame, Debug

 

예를들어 로그 찍을때

- 현재 class명 : `MethodBase.GetCurrentMethod().DeclaringType.Name`

- 현재 method명 : `MethodBase.GetCurrentMethod().Name`

 

추가로 `nameof` 연산자를 통해서도 member나 변수등의 정보를 간단하게 가져올 수 있다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함